Fixes #10, Fixes #15

Functions. Functions everywhere!
Beginning of some documentation, as well as more options for people who
use non-standard keys.