Refactored re-run to only allows transactions that can be rerun

This PR relates to issue: https://github.com/jembi/openhim-core-js/issues/264
the .rerun property is on channelsMap and not on the channel object. This is diff to the .canRerun which is set on the actual transaction. The .rerun is for an entire channel to determine whether transactions that belong to that channel may be rerun by the logged in user (User permission control)