Refactor factories
#7 acceptance test
#7 Checkin unit tests