[add] mark tags not found as 'unknown' instead of leaving them empty

this allows the clients to know if the tag hasn't been loaded and may be loaded in a while (tagget not done yet) or if tagget failed and gave up (this would be reflected in tags['somekey'] = 'unknown'
[add/fix] template inheritance example, getCurrentSong and getCurrentFunction, renaming

model:
+ db changed to match tag mp3 names (title instead of name, artist intead of author, etc)
+ Song class expanded to hold all tags used on the page.

view:
+ getCurrentSong and getCurrentPlaylist extracted from views.index to separate functions

html:
+ adding to db will open a different page addToDb, just to play with inheritance features.
[fix] rm extra '/'
[add] url add req when adding to playlist
[fix] update rate was at 2 secs (accidentally)
[add] getContext function, cancel add function
[add] confirm on deleting from playlist
[fix] dead code
[rm] rm debug logging
[fix] rename base site
[rm] cleanup

- cancel function isn't working
- lots of dead code
[add] alert if cmd exec fails using javascript alert
[] rename getContext to buildContext, for clarity
[add] check and display server status (offline/online)