Fix use of uninitialized value in wav.c

Old version uses uninitialized `*size` if the file is corrupt.
This also fixes the bug that corrupt wav files can crash cmus.
Merge pull request #86 from mahkoh/wav

Fix use of uninitialized value in wav.c
Improved shuffle mode

When a track is manually chosen in shuffle mode, it is inserted at current
position in the shuffle list.
Rename several functions

  tree_set_selected ->   tree_activate_selected
sorted_set_selected -> sorted_activate_selected
    pl_set_selected ->     pl_activate_selected

      tree_set_next ->   tree_goto_next
    sorted_set_next -> sorted_goto_next
        pl_set_next ->     pl_goto_next

      tree_set_prev ->   tree_goto_prev
    sorted_set_prev -> sorted_goto_prev
        pl_set_prev ->     pl_goto_prev
Merge pull request #87 from mahkoh/shuffle

Shuffle + Rename

Should make #39 a bit better.
Fix use-after-free in browser

browser_load frees browser_dir but ptr, which points to a substring of
browser_dir, is used afterwards.
Merge pull request #88 from mahkoh/use-after-free

Fix use-after-free in browser
Trim release dates to year

This makes it consistent with how dates are handled in expr.c
Merge pull request #89 from alexkay/master

Trim release dates to year
Merge branch 'master' of https://github.com/cmus/cmus