Implemented wrappers for the hiredis library.
  * Redis.hpp - The primary interface for handling a connection and executing commands. Contains many command helper functions.
  * RedisBinBag.hpp - Helper functions for storing/retrieving binary buffers and images.
  * Reply.hpp - Wrapper around a redisReply* that handles freeing of the memory when all copies go out of scope.
  * Subscription.hpp - Interface for handling subscription connections, uses libev to drive the event loop.

Changes to the naming conventions - ".h" where there is a corresponding cpp file and ".hpp" where
the implementation is contained within the header file.

Split Image<> and ImageBase<> into their own header files.

Moved the global string and maths functions to static functions within String and Maths.

Removed the clamp<> specialisations since they are actually slower than the generic ones.

Updated pugixml to latest version (1.4).