Date/time feature switch.
Decouple feature switches from features
Add IFeatureSwitchFactory as an option for attributes to implement.

We will need this if we want to pass the feature itself to the feature switch
as will be the case for the AppSettings feature switch, so that it can pick up
the name of the class to use as a config key.
AppSettingsFeatureSwitch -> AppSettingsSwitchableAttribute
Replace AlwaysEnabledFeatureSwitch with BasicSwitch
Rename IFeatureSwitchFactory to IFeatureSwitchBuilder and pass in StructureMap

This will allow us to create feature switches that use services provided by the
IOC container, for example to get settings from a database.