Some error handling and typo fixes
isEqual is too draconian, especially with timestamps