refactored code into seperate files based on task queue
fixed some save issues, and added additional multistate standards