use Unicode string literals *everywhere*
remove useless and dangerous finally statement

hides further exceptions raised from the except block
CLI args are bytes
add force_text() compatibility helper for Python 2/3
make our exceptions take unicode messages

even on Python 2.x
pass exception messages as unicode between processes
exception message is optional
NodeAlreadyLockedException takes a dict, not str
automatically decode CLI args into unicode
ensure CLI functions yield unicode
reimplement force_text()
add tests for force_text()
Merge branch 'bugfix/unicode-overhaul'