now uses Long for internal date comparison & storage
adding serialization/deserialization test