Added basically everything, and added a tool to build headers