The NOvA Timing System: A system for synchronizing a long baseline neutrino experiment