Minor code cleanup: ACLRule human_readable_repr as __unicode__ and smarter __repr__.

Conversion to standard Python idiom of allowing the objects to be coerced to text.  Simplifies use in templates (`${foo}` calls `unicode()` anyway) and by having `__repr__` use the string representation of the object, saves a lot of (almost, but not quite) code duplication.

Also threw in a change to eliminate a silly `@staticmethod` if-tree.  (See the specific commit for additional notes on that change.)
has