Fix boost includes

We had some legacy boost includes which annoyed me, so i removed them.
Unfortunately those had some other includes which were used in the source files.
It annoyed me that we didn't include what we use in each of the header files, so I made a script which compiled all of the header files in isolation and then I fixed all the errors. This is the result.