[haptics] Support periodic theme effects

This commit adds support for using a periodic effect for the basic
keypad press theme effect.  This is because in some cases the periodic
effects allow greater control over the waveform than a rumble effect.