Do id freeing on rollback

This PR fixes so that transaction rollbacks free up the node and relationship id's that were allocated during the transaction. They will only be reused on restart though, as before.
This test case is successful even without the diff present. While it seems useful, it does not cover the code added.