objectCreate finished and refactored