Validation: Some basic validation, start of unit tests, form improvements

*REQUIRES* latest https://github.com/open-data/ckan/tree/canada-v2.0 for code that defaults dataset names to their id.

*REQUIRES* https://github.com/open-data/ckanapi >= 1.3 is now for paster commands and tests

* mandatory fields have a `*` in front of their labels, and are actually mandatory now (except subject)
* date fields are validated as actual dates
* choice fields now default to the "example" value from the proposed_schema spreadsheet, only used for maintenance_and_update_frequency at the moment