Bug fixes and new features

__Bugs:__

* Fixed bug in LoadLogger and LoadSerializer methods when trying to load custom types. The condition to determine whether a custom type implements ILogger or IBinarySerializer, respectively, was incorrect, meaning custom types could not be loaded.

* Fixed a bug in SimplSockets.SimplSocket.ExtractControlBytes method. Added parentheses around messageLength calculation to avoid an issue with operator precedence. In certain cases, subtraction was causing messageLength to be invalid.

__New commands:__

* keys-tag : allows clients to retrieve keys for a given tag. Can also filter keys by optional regex. Added GetKeysTagged() processing method to support functionality.

* keys : allows clients to retrieve all cache keys. Can also filter keys by optional regex. Added GetKeys() processing method to support functionality. Note: likely an expensive operation, use with caution.

* clear : allows clients to clear the cache (i.e. remove all entries). Added Clear() processing method to support functionality.

__Adjusted commands:__

* del-tag : now allows clients to remove keys for a given tag that also match an optional regex. Useful if you only wish to remove certain keys associated with tag. Added RemoveTagged processing method to support functionality.

* set-tag : modified logic for determining whether or not an expiration date was provided. Also cleaned up/modified expiration date extraction.

__Misc:__

* some light code cleanup

* removed unused usings from various classes

* added basic file logger

* upgraded solution to VS 2013