Feature: Documentation

- adds more documentation
- state for oauth is now encrypted
- more error handling
- better organization