Added the ability to define 'none' as a possible value on some drop-down fields

* checkbox added to field edit page, which saves empty_default_value to the db (0 or 1)
* programme create page shows 'none' by default for fields which are checked with this value
* edit pages also have none as an option
* added a quick test to make sure all_as_list returns the correct array
Merge branch 'develop' of https://github.com/unikent/programmes-plant into feature/empty-additional-school-issue-72

Conflicts:
	application/models/simpledata.php
simpledata.php in line with develop
updated simpledata test to develop version.

I think this file somehow got merged badly.
refactored form fields, simpledata and simpledata tests by hand

some pretty confused and confusing merges by git, but now untangled
added cache key 'defaulttonone' for those fields which require a value of 'none' in their select lists
added some comments to simpledata.php
added $year to call to call_as_list in formfields multiselect
tidied up code slightly
Merge pull request #155 from unikent/feature/empty-additional-school-issue-72

Feature/empty additional school issue 72
added functionality to remove the 'defaulttonone' cache key as well as the standard one when the cache is flushed
separated asserts for 'defaulttonone' cache key into separate tests
Merge pull request #157 from unikent/feature/empty-additional-school-issue-72

added functionality to remove the 'defaulttonone' cache key
Merge branch 'develop' of https://github.com/unikent/programmes-plant into feature/programme-listing-ui-issue-91