Initial Commit

- first draft of class.
- Javadocs and purpose and changelogs need adding. 
- check syntax and two case statements yet to be implemented.