Organize includes

This pull request organizes all the `#include` directives in the way described here: http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Names_and_Order_of_Includes