Moving Codegen to controls and allowing DB Comments to override

Two main features here:
- The ability to embed json objects in database comments to override aspects of the codegen process. This lets you:
 - Directly specify what type of control should be created for this database field
 - Additional attributes, like Name, Width, CssClass, etc. that should be added to the generated creation code. 
- Most metacontrol codegen is now handled by static functions in the control objects themselves. This allows the following
 - Override codegen by overriding the particular routine in the control object.
 - Create plugin controls that know how to generate their own CRUD routines. Combined with the first feature, this lets you easily codegen metacontrols that use plugin controls and you don't need any additional coding to put data in and save data from the control.

See the MetaControlGenNotes.txt file in /install/project/includes/configuration for detailed instructions. Eventually this should be added to the wiki.