Make some type signatures more general
Update some outdated docs
Merge pull request #16 from alang9/master

Looks like I forgot a few things