Use argparse and support multi-part commands.
Added readline support.
Added readline and history support.