I take that suggestion back. The idea would be to make the nrml models a bit smarter, but having see how source.py works, it is better to leave things as they are, for consistency sake. Notice however that isinstance is usually considered a code smell: http://www.canonical.org/~kragen/isinstance/

I will give LGTM once the branch is refreshed and I can run the tests.