Provide better error handling

Change the method signatures to follow the check ok pattern.
Support pages without folders
Using a composite literal to create a page.

Wonder why the need for composite structs.  Not sure if my go knowledge is lacking or if this is cruft from other programming language doctrine.
Remove unreachable code path.
Introduce unit testing for page.go
Adding ability to read from io.Reader

This allows for testing without relying on the file system.  Parsing algorithm to not read the entire file into memory.
Adding benchmark for parsing pages using unicode.

The resulting comparsion is not equal because NewPage reads the file each time where ReadFrom just reads a buffer in memory.
Adding more test cases
Nitro timer is encapsulated.

Remove the need for NewSite by relying on appropriate defaults.  Made site.c site.Config to allow Sites to be created outside the package.
Better reporting when the template is missing.