How do I cancel my blockchain transaction (still unconfirmed)?
Cancelling unconfirmed transactions is easy.   Just submit a higher fee double-spend transaction.   For example: if you sent a 0-fee transaction, it could take a day before it gets mined onto a block.   You can send another transaction with the same inputs that just sends the money back to yourself.   On this transaction you put a higher fee.   This becomes more likely to be mined and will get included in the blockchain - invalidating the slower-to-confirm original.
Some tools to help out: https://github.com/petertodd/replace-by-fee-tools