Fired all batch requests at the same time in getMessagesArrayFromIDs and used Promise.all, it's so much faster than waiting for each one to complete before firing the next!