Add documentation

Trying to share with some new programmers, so adding better
documentation.