20130504 update from upstream and undo upstream changes to vibrator (was working fine before. new commits break it)