Update documentation throughout and build out further spec structure