Music search bugfix

CDirectoryHistory::ClearSearchHistory misused vector::iterator::operator++
in conjunction with vector::erase such that it iterated beyond the end of
the vector if there was a previous music search, resulting in a segfault.
End effect: you could only do one search. Replaced with std::remove_if.
Merge branch 'music_search_bug' of http://github.com/bavison/xbmc into music_search_bug