Use Boost::Test for unit testing
Add unit tests for various other components
Merge branch 'features/boost-test'