Adding documentation, fixes

Changes:
- Fixed (currently unused) reset methods
- Added documentation to better explain the classes, structs, enums, and methods