Cleanup and improve ringer tile code.

Handle absence of vibrator properly by excluding the respective modes
from the selection in that case.

Change-Id: I63d1fc06cbbcadadff51866b929dde453f4eb4bd