reduce libary size by passing -fvisibility-inlines-hidden - closes #1832 - refs #1826
+ potential boost::variant optimization
+ fix writing to std::stringstream

* if seeking pass the end  - grow buffer (stringstream!)
* seekp beyond current buffer size doesn't set failbit (clang/libcxx)