Fast initial synchronisation

The synchronisation is done directly from bitcoind database files.
Here the steps of the process:

- step 1: prepare sqlite database 
- step 2: parse all blocks backward (the position of each block in blk000XX.dat files, are taken from the leveldb index (blocks/index dir)
- step 3: reorder transactions
- step 4: parse transactions

The main function, where these 6 steps are done, is `blocks.initialise_transactions()`:
https://github.com/JahPowerBit/counterpartyd/blob/develop/lib/blocks.py#L1260

Average time to parse a block on an Intel Xeon 3.2Ghz with a 7200 RPM HD is about 0.1s.

**Important**: bitcoind must be stopped before launching this script.

Missing:
- manage `get_tx_info2`
- add a warning/question "stop your bitcoind, this operations takes times, etc... are you sure you want to continue ? y/n"
- make a python lib for all files in `/lib/blockchain/` installable with pip


Why are we changing so much of the logic here? We need to keep this as close as possible to the original!