recognize TPA and TCM tags

TPA is an alternate "disc" tag
TCM is an alternate "composer" tag
persist queue on shuffle. closes #190
server: add updateTags message to update db
edit tags button appends a lol to the song name
client: fix selection.incrementPos for albums in a list. closes #38
edit tags dialog can edit some tags
edit dialog edits all the tags
obstruct hotkeys in the edit tags dialog
refactor db props listings
server: parse updateTags messages more carefully
client: fix not stopping keyboard propagation for text boxes
client: code cleanup
Merge branch 'master' into edit-tags

Conflicts:
	src/client/app.js
client code cleanup
update music-library-index to fix library selection bug
client: support editing multiple tags at once
tag editing: support per track mode and access keys
client: wire up cancel button on edit tags dialog
client: shortcuts window scrollable with arrows. closes #28
client: fix UI issues with buttons

 * fix hover state getting stuck after clicking a button. closes #166
 * fix clicking buttons clearing the selection. closes #183
 * minor code style cleanups