refactor SharedMessagePool for easier control of allocation chunk size