Moved parsers to seperate file

Moved parsers into seperate file, added unique struct optional keyword
and added variable references (for use in the validator later)