Documenting the codebase in DOCUMENTATION.md

This is intended to be a temporary file while we build out the codebase.
The eventual goal is to have Sia well documented. This particular file
is imperfect and could be compressed in a few ways.

The Sia documentation should always be kept up to date and factually
accurate.