Use sequence for UserFactory & use nicer import

You can't easily create multiple users with the UserFactory without
using a sequence. I also wasn't aware that one can use the nicer
"factories" import instead of "newfactories".

Note that we can't easily use a LazyAttribute for the email address, as
the username may contain spaces.
Add support for methods on User model when checking permissions

The ``permissions_required`` decorator, and hence
``Application.permissions_map`` and
``Application.default_permissions``, now
handle both methods and properties on the User model. Previously, it
wasn't supported, but a docstring showed ``is_anonymous`` as an example,
which is a method.