Yay Callback functions using boost::function and boost::bind, also some cleanup!