Internal API changes and introduce testing.

I've added unit testing and benchmarking.  I've made some changes to core api, namely, renaming site.c to site.Config. I've also encapsulated the nitro timing API inside the Site modules.

I've changed the internals of Page to read from an io.Reader.  It only allocates memory when the particular stage is required.  There is frontmatter and the content.