Introduce RapidXml library dep & unit test
JsonSerializer: Remove usage of templated print_value method
Rename of JsonSerializer to JsonCppSerializer
Rename IJsonSerializer to ISerializer
Introduce RapidXmlSerializer interface class
Introduce RapidXmlSerializer interface class (both writing & reading)

* Introduce RapidXml v1.13 headers-only library, with clang compiling
err patch.

* Introduce test_one.xml for unit testing with XML & JSON interfaces.
Bit of clean up on ptree / JSON related code
RapidXmlSerializer: Additional refactoring of class

* Add err handling (via C++ exceptions) in underlying unserialization method
* Disable debugging dump of serialization values
* Re-add const to input argument in read method
* Clean up comments a bit
* Fix stringify method
* Add serialization of basic object types within object node serialization.

* examples/values.cpp: Introduce additional unit tests
Relocate rapidxml source files to third-party/common
third-party/README.md: Update docs to reflect upload of iOS libs
third-party/build-deps.sh: Bit of clean up

* Introduce timestamping of archive files
* Add ios, linux platforms for archiving deps
Initial merging of Object & Array containers into Value interface

* ObjectPair typedef
* ArrayIndex typedef is now uint
* VString operator[] method overloads have been removed

* Remove Value::append method (replaced with Value::push_back)

* Introduce typedef 'Members' (vector of std::string objects)
* Introduce several new operator overloads in nom::Value (lesser than,
equality, inequality, ...)

* Introduce constructor for initializing Value object to a set type --
i.e.: ArrayValues or ObjectValues.

* Introduce Value::member_names, Value::erase, Value::empty &
operater[] method overloads -- nom::Object and nom::Array are now
officially deprecated and will be phased out soon; replaced with adding
on the features onto nom::Value.

* Fix ISerializer derived stringify methods; the method will now call
the  appropriate read method before trying to output to a string, saving
one from the trouble.

* examples/values.cpp: Additional unit tests (used during the extended
refactoring job)

Last, but certainly not least, it is worthwhile to note that it seems as
though the known memory leaks in nom::Value have vanished, due to
efforts to consolidate nom::Object & nom::Array together into
nom::Value.
Removal of JsonCppValue class interface (replaced by JsonCppSerializer)
More clean up work on Property Tree feature

* Relocate duplicate_string from Value to its own implementation file;
system/helpers.[cpp|hpp].

* VString: Swap out std::string with const char* for potential
performance gains; we can check for nullptr instead of length now.

* Implement copy & swap idiom in Value class.

* Fix unserialization err in RapidXmlSerializer due to the
parse_declaration_node xml_doc flag having been recently enabled;
the err manifested itself by creating a null object node where the
declaration array would have been if we had handled it.

* Replace most all instances of nom::Object & nom::Array usage with
nom::Value.
ptree/Value: Integerate Array container & functionality into Value

* Removal of several unnecessary files (general clean up of this
side project!)
Property Tree: General clean up on source files
Introduce unit testing with Google Test framework

* Introduce tests/ptree.cpp; most of the tests in examples/values.cpp
will be migrated here.
Relocate JsonCpp dep to third-party/common dir
.gitignore: Add third-party/common to ignore filter

* Remove third-party/common/rapidxml -- these were never intended to be
pushed to the repo; see https://sf.net/p/nomlib
tests/CMakeLists.txt: Copy DLLs to tests output dir (WindowsOS)