Adding in error messages.
Updating documentation and some function names
Merging with master
Fixing some last errors
Fixing some doctests
Fixing things