refactored large all models and controllers