Updates to support OData version 4
- includes improvements to library architecture and robustness