Upgrade dependencies and requirements files

The requirements have become a little stale, and the requirements should be documented a little bit better (so it's obvious _why_ they're in the requirements files)