improve helpfile by adding subcategories and clarifying usage.

With these changes, the sx help message is as below.

I think it's a lot better now.

````
vagrant@vagrant-ubuntu-trusty-64:/vagrant/sx/src$ python sx.py help
Usage: sx COMMAND [ARGS]...

  -c, --config               Specify a config file

The sx commands are:

DEPRECATED
   ELECTRUM STYLE DETERMINISTIC KEYS AND ADDRESSES
        genaddr                    Generate a Bitcoin address deterministically from a wallet
                              seed or master public key.
        genpriv                    Generate a private key deterministically from a seed.
        genpub                     Generate a public key deterministically from a wallet
                              seed or master public key.
        mpk                        Extract a master public key from a deterministic wallet seed.
        newseed                    Create a new deterministic wallet seed.

EXPERIMENTAL
   APPS
        wallet                     Experimental command line wallet.

OFFLINE KEYS AND ADDRESSES
   BASIC
        addr                       See Bitcoin address of a public or private key.
        get-pubkey                 Get the pubkey of an address if available
        newkey                     Create a new private key.
        pubkey                     See the public part of a private key.
        validaddr                  Validate an address.
   BRAIN STORAGE
        brainwallet                Make 256 bit bitcoin private key from an arbitrary passphrase.
        mnemonic                   Make 12 word mnemonic out of 128 bit electrum or bip32 seed.
   HD / BIP32
        hd-priv                    Create an private HD key from another HD private key.
        hd-pub                     Create an HD public key from another HD private or public key.
        hd-seed                    Create a random new HD key.
        hd-to-address              Convert an HD public or private key to a Bitcoin address.
        hd-to-wif                  Convert an HD private key to a WIF private key.
   MULTISIG ADDRESSES
        scripthash                 Create BIP 16 script hash address from raw script hex.
   STEALTH
        stealth-addr               See a stealth address from given input.
        stealth-initiate           Initiate a new stealth payment.
        stealth-newkey             Generate new stealth keys and an address.
        stealth-show-addr          Show details for a stealth address.
        stealth-uncover            Uncover a stealth address.
        stealth-uncover-secret     Uncover a stealth secret.

OFFLINE TRANSACTIONS
   SCRIPTING
        mktx                       Create an unsigned tx.
        rawscript                  Create the raw hex representation from a script.
        set-input                  Set a transaction input.
        showscript                 Show the details of a raw script.
        showtx                     Show the details of a transaction.
        sign-input                 Sign a transaction input.
        validsig                   Validate a transaction input's signature.

ONLINE (BITCOIN P2P)
   BLOCKCHAIN UPDATES
        sendtx-p2p                 Send tx to bitcoin network.

ONLINE (BLOCKCHAIN.INFO)
   BLOCKCHAIN QUERIES (blockchain.info)
        bci-fetch-last-height      Fetch the last block height using blockchain.info.
        bci-history                Get list of output points, values, and their spends
                              from blockchain.info
   BLOCKCHAIN UPDATES
        sendtx-bci                 Send tx to blockchain.info/pushtx.

ONLINE (BLOCKEXPLORER.COM)
   BLOCKCHAIN QUERIES (blockexplorer.com)
        blke-fetch-transaction     Fetches a transaction from blockexplorer.com

ONLINE (OBELISK)
   BLOCKCHAIN QUERIES
        balance                    Show balance of a Bitcoin address in satoshis.
        fetch-block-header         Fetch raw block header.
        fetch-last-height          Fetch the last block height.
        fetch-stealth              Fetch a stealth information using a network connection to
                              make requests against the obelisk load balancer backend.
        fetch-transaction          Fetch a raw transaction using a network connection to
                              make requests against the obelisk load balancer backend.
        fetch-transaction-index    Fetch block height and index in block of transaction.
        get-utxo                   Get enough unspent transaction outputs from a given set of
                              addresses to pay a given number of satoshis
        history                    Get list of output points, values, and their spends for an
                              address. grep can filter for just unspent outputs which can
                              be fed into mktx.
        validtx                    Validate a transaction.
   BLOCKCHAIN UPDATES
        sendtx-node                Send transaction to a single node.
        sendtx-obelisk             Send tx to obelisk server.
   BLOCKCHAIN WATCHING
        monitor                    Monitor an address.
        watchtx                    Watch transactions from the network searching for a certain hash.

UTILITY
   EC MATH
        ec-add-modp                Calculate the result of INTEGER + INTEGER.
        ec-multiply                Multiply an integer and a point together.
        ec-tweak-add               Calculate the result of POINT + INTEGER * G.
   FORMAT
        base58-decode              Convert from base58 to hex
        base58-encode              Convert from hex to base58
        base58check-decode         Convert from base58check to hex
        base58check-encode         Convert from hex to base58check
        decode-addr                Decode an address to its internal RIPEMD representation.
        embed-addr                 Generate an address used for embedding record of data into the blockchain.
        encode-addr                Encode an address to base58check form.
        ripemd-hash                RIPEMD hash data from STDIN.
        unwrap                     Validates checksum and recovers version byte and original data from hexstring.
        wrap                       Adds version byte and checksum to hexstring.
   LOOSE KEYS AND ADDRESSES
        secret-to-wif              Convert a secret exponent value to Wallet. Import. Format.
        wif-to-secret              Convert a Wallet. Import. Format to secret exponent value.
   MISC
        btc                        Convert Satoshis into Bitcoins.
        initchain                  Initialize a new blockchain.
        qrcode                     Generate Bitcoin QR codes offline.
        satoshi                    Convert Bitcoins into Satoshis.
        sha256                     Perform SHA256 hash of data.
        showblkhead                Show the details of a block header.

See 'sx help COMMAND' for more information on a specific command.

SpesmiloXchange home page: <http://sx.dyne.org/>
````