Use GMT timezone as local. This fixes assertion when converting Date() object to string
- Common base class for all wrapped objects
- Code cleanup, added some comments