Split up packages and refactored parser