REFACTOR OF FINISHED DOCUMENTATION.* *=except tpat, reset, and activate. which aren't designed yet