Changing to use tz names not offsets

Resolves Issue #4

* Using tzinfo to manage timezones
* Created a class to deal with the times
* Added tests for the new class along