Added one public header that includes all the headers in the right order

That makes it a lot easier to actually use the library, instead of figuring
out what headers to include and in what order. Not the mention the dependencies.