I made an animation of the Pokédex screen, to show how it works.
Sorry about the bad quality :(
I'm not really sure about the legendary abilities. They don't really seem all that useful, as it would be easier just to go to the area where you find the Pokémon that you want normally. Also, it might be quite hard to code in.
About legendaries being only given to certain trainers, I don't think that's a good idea. If I do that, people would start complaining about how they can't get legendaries, much like people complain about event Pokémon now.
I still think they should be catchable in Pokéballs, as even though they are legendary, they are still Pokémon, so balls should still work on them. Catching a legendary yourself is a lot more satisfying than having it befriend you.
However, I will be making the way to get each legendary a lot harder than it is in the official games, so only skilled players can actually reach them. They will be available to everyone, not just certain people.
About Mystery Gift, it works by reading a file in the MysteryGift folder of the game. It will then create a Pokémon or item in the game from the read data, which can be collected in the standard way (an NPC in the PokéMart will give you the gift).
Also, each official gift I release to the public will be linked to in the first post of this thread, so anyone can download it at any time after the event. This solves the problem of missing an event.
I'm probably not going to include every Pokémon as catchable in-game, because I'm not planning to have all the regions and I don't want to do it the way D/P did it (by adding the old Pokémon to the routes after you get the National Dex), since it doesn't make much sense. However, all of the Pokémon will be obtainable by a method which I am currently keeping secret (you won't be able to do it until you have the National Dex anyway, so there's not much point in knowing it now). But it won't be anything like D/P's method.
As for the old Pokémon with evos and pre-evos, they will all be catchable in-game, so don't worry.