Self-validating smart models for Laravel 4's Eloquent O/RM