tidy up sign listener, finish sign saver (hopefully)