Initial Commit

Added object factory and tests