WIP commit.  The test method is broken but the rest seems to be working.
Merge conflict.
Break out argparser dependencies into separate module.
Fixing unicode/binary issue affecting Python 3.x.
Fixing merge conflict.