A great job!
This is really well done. I do have some criticisms, however:
1. Mario jumps a little higher in this game than in SMB. This is understandable, since Super Mario Bros has Mario jump exactly 4 tiles, but it can sometimes be annoying.
2. In SMB, enemies were killed if you're moving down; in this game, you have to be on top of the enemies. It might not seem like such a huge deal, but it's a little annoying not being as safe as you would be in SMB. This is especially annoying in the jumping fish levels.
3. Some of the music seems badly chosen, like the water music for Samus, and the above-the-clouds music for some of them being cave music.
4. Bowser is ridiculously easy if you're using non-Mario characters, especially Mega Man, Simon, and Bill. Hammer Bowsers are actually even easier than fire Bowsers.
5. The last Bowser is supposed to both shoot flames and throw hammers, iirc.
6. Mario doesn't quite move as he's supposed to in the water. I've noticed that, if you don't already have motion above the pits, you can't move across.
7. Mario's movement in general is a bit off. Super Mario Bros used a more static, set-speed method of movement, while this game uses a friction and gravity-based movement system. This one is relatively harmless.
8. Firebars aren't really quite as big as they look in SMB; ducking directly under one shouldn't damage you. This makes certain levels harder than they should be.
9. Minor: In SMB, the actual vine object actually appeared all at once, allowing you to climb it before it finished growing.
10. Why does everyone move faster in the "air" underwater? I understand Super Mario Bros did something like this, but that was because Mario wasn't swimming. This also is quite exploitable with Samus by morphing/unmorphing repeatedly.
11. Some gaps which are difficult to cross (often requiring near-perfect jumps) are not assisted with moving platforms.
12. Lakitu appears too frequently. It should take him around 3 times as long as it currently does for him to come back.
13. Simon's jumping. I realize he jumped like that in Castlevania, but there are just too many enemies in SMB, and plus a misstep can result in instant death. A single misplaced jump can be the end of Simon. Points of no return like that are not particularly fun. Perhaps, if you like the difficult jumping, you could allow him to move in the air, just really slowly. That would be much less frustrating.
14. All the non-Mario characters have to shoot a ridiculous number of times to kill an enemy. This adds nothing to challenge and is just tiring to the finger, mostly because the enemies don't even shoot back. Normal enemies should take no more than a couple hits; Lakitus should maybe require more hits.
15. Simon's non-powered up whip is too high up. Allow it to hit goombas.
16. Megaman's short-on-time track is stupid. It sounds more like what you'd hear at a party than running short on time.
17. Simon is horrible in water levels, mostly because he jumps so high. This really shows up in the final castle level.
18. The saving feature is OK, but it would be nice if I didn't have to specify a file. It is, however, nice that multiple files are easily possible.
If these look like a lot, don't worry. They don't really add up to much. Nice game, I hope you make a sequel. :)