Basic Logic And Documentation Added

* First real commit of the file
* Documentation added
* Initial structure completed
! No unit tests yet
! No logging yet