Parser

I know we may need to refactor to make things cleaner, but just so everyone has access to the updated classes and functions, lets merge?