some minor code refactoring, wrote new factories, cleaned up all but one pesky existing spec (aside from the sprint 3 spec which doesn't run automatically)