Added type coupling between ZonePrograms and their corresponding ZoneProgramParameter types. Reorganized the application to support .NET MEF, which is to be added after this commit. Refactored to make some methods/techniques consistent with the rest of my applications (like the base method technique). Added defaults + crap files to gitignore.