Allocates and returns a unique message id. This id is guaranteed to not be in use by any pending message acknowledgements