Software Specifications

Incase anyone wants to work on the code, and whats to know what its
supposed to do, you can read these longwinded bullshit documents to get
a vague idea of what we're doing.