C++ client
The public C++ layer to be consumed by end users. MSVC req VS2015. No methods return vectors of pointers anymore, just straight vectors of objects. This removes a layer of pointer dereferrencing from most operations.
Using move semantics instead of output parameters. This allows simplifying the api in minor ways (not providing two apis w & w/o output parameters).
Removed all *_internal.hh files.
Removed nds_memory.hh. Removed the NDS_SHARED_PTR macro and replaced all instances with std::shared_ptr.
Removed the raw p_type pointer in NDS::connection, replaced it with std::unique_ptr.
Simplified some loops by converting them to foreach loops. Simplified some areas with auto types.
All SWIG specific code is in nds_swig.hh, added detail and anonymous namespaces to keep it header only.
Builds with MSVC 2015. Under MSVC 2015 all the C++/Java tests pass except the java mock server test.
This is the first cut with a requirement of C++11.
This also updates the java to require 1.6+