Use std::unordered_map instead of boost::unordered_map.
Replace boost::signals2 with much lighter implementation.

Reduces application binary size by 18.5%.