Refactored views... keep logic in models