major update: added JS to allow clock to self-update the time