Fix warn_admins() throwing exception on Python 2

The code logic that determines whether a user is supplied with or
without a resource part which needs to be stripped checks if user
is of type str. When running under Python 2, the 3to2 tool will
have changed this to unicode which makes the check fail when it
shouldn't, resulting in .getStripped() throwing up.

This was exposed when doing warn_admins() on Python 2 but likely
could be triggered in other ways as well. This commit also adds
the six library to dependencies as it relies on six. Six was
already installed due to other dependencies however, so this just
makes it explicit and doesn't truly add new ones.