Modernize TrackUtils
- do explicitly implement destructors which are implicitly generated
- prefer override over virtual
- prefer (implicit) std::initializer_list over boost::assign
- prefer STL algorithms over raw loops
- add final if possible
- remove SVN keywords
- prefer vector assignment over set of push_backs
- replace BOOST_FOREACH with STL algorithms