remove knowledge of snapshot from NoteStore

NoteStore shouldn't need to know firebase snapshot internals, so instead
pass noteName and note object to NoteStore's onNoteAdded event. Now all
snapshot knowledge is within the firebase callbacks and aren't leaked.
update npm packages

why not
fix react-router

new version required some updates in our code.
fix deprecation: firebase name() should now be key()