MSVC Memory leak detection, SQLite and Firebird backend changes

This PR includes the following changes:
CMAKE:
- CMAKE_DEBUG_POSTFIX support added to main CMakeLists.txt enabling differentiation in debug/release file names i.e. ( soci_core_3_2.dll and soci_core_3_2d.dll) where CMAKE_DEBUG_POSTFIX=d
OVERALL:
- added MSVC_MEMORY LEAK DETECTION ( MSVC_MEMORY_BEGIN.def,MSVC_MEMORY_END.def). 
- TODO: other back-ends(other than firebird and sqlite) needs to include MSVC_MEMORY_BEGIN/END in order to enable memory leak detection.
CORE:
- memory leak fix in boost-fusion.h in test28(
FIREBIRD:
- change in fixed char column(see commit.cpp) and consequently  in firebird tests
- backend_factory added create_database method( implemented in sqlite and firebird )
- firebird test: secondary test path( if connection string is not specified then temporary local database is created using default firebird credentials )
- some test fixes due to soci_firebird change in fixed chars
SQLITE:
- blob reimplementation( using std::vector<char> )
- fixed memory leak in sqlite3_session_backend constructor in case when constructor failed( sqlite3_close_v2 should be called before exiting constructor
- added specific test6( sessions using URI filenames in case when sqlite supportes them )