Fix date deserialization

Fixes #47 by adding extra check for dates before objects because a Date is an Object but we don't want to try and construct it as a new Object