Answer to 1 would be to script something. Could have it choose a different control layout based on what game is ran. That's a lot of work and something you'll have to put some time into. There are scriptor's here, including myself but I'm not willing to write it as it would take too much of my time but willing to help with the coding. So if you're willing to learn then I'm willing to help! This is just a tedious task IMO.