first revision of sundial

Works with current uploader code, not yet modified to include needed tideline functions.

@jh-bate or @cheddar please review. @cheddar would like me to merge and tag this and have the uploader depend on it before merging the uploader branch where I've removed the moment dependency and replaced it with sundial methods.
This could end up getting logged quite a bit.  Fwiw, perhaps a better method of handling this would be to completely change the name of the method?  That would remove the old method and cause a much more apparent error on any code that hasn't been updated.

That also raises the question of keeping the old one around along with renaming, but I honestly think that consolidating on one direction for offsets is more important and given that we are planning a backwards incompatible change anyway, I'm thinking failing hard is the lesser of the evils.  I think this will largely affect @jh-bate so do you have any objections/preferences for one or the other?