Added tests; implemented missing behavior; refactored test models and factories