Added many objects, refactored code