#24 API integration to support Admin UI and basic use cases

- Added ApiResponseBuilder and ProcessApiRequest API specific unit tests
and implementation within ApiResponseBuilder to support PUT (update)
requests
- Added FeatureSwitch equality tests and IEquatable implementation for
comparing featureswitch instances
- Added method documentation on various FeatureSwitch classes
- Modified CustomAttributes to use a Dictionary<string, string> instead
of NameValueCollection, giving us more programmatic freedom and making
it far easier to offer FeatureSwitch equality including attributes,
modified HttpHandler and HttpHandlerFactory as required.