added validatePlayFunction which if set will be called and must return true to play a song. This way we can check cordova connection status outside of the playQueue lib. Also changed how we look for errors on timeout. if canplay was called, its not an error.