[ ] Cache messages before sending back to storage (could be a cloud storage or a do it yourself internal service). This makes the module resilent to network conditions.
[ ] Provide events to developers like: onErrorLogged, onSyncStart, onSyncEnd. This could be used for nice user feedback.
[ ] Global error interceptor (Investigate angular for this)
Finish the logger module and document the usage