If given the same height and public key, blocktools.py create_coinbase would generate the same coinbase transaction-- bad if you're writing a test for forking scenarios where you want to generate two different blocks at the same block height.
This adds a unique counter to create_coinbase, so every call returns a unique transaction.
Tested by running all of the rpc-tests that use create_coinbase (and ran correctly before this pull request -- bip68-sequence.py fails when compiled -DDEBUG_LOCKORDER).