Add 'criticctl listusers' for listing all registered users

The 'listusers' command takes a --format argument which takes one of the
following values:

 - "tuples": List user data as a python-parseable list of tuples
 - "dicts":  List user data as a python-parseable list of dicts
 - "table":  List user data as a human-readable ASCII table
criticctl adduser: Allow empty password on command line
When changing password, current password may be empty
Check proper UID after calling setuid() instead of checking UID == 0 before

This allows us to run criticctl as the 'critic' user, instead of needlessly
enforcing 'root'.
Fix crash on /showreview on watcher filters with empty path
Regression TC for showreview crash when user watches path ""

The crash was fixed in 3da8555 "Fix crash on /showreview on
watcher filters with empty path".
Add test for 'criticctl listusers' functionality
Change to a more appropriate resize cursor.

Previous didn't work properly on Mac (and non-Opera browser's too probably).
Improve error handling when 'git cat-file' process fails

Report 'git cat-file's standard output in case of failure to
make problems easier to diagnose.

Issue #42