refactor Movie->new with dependency injection