Introduce vibration session HAL support

Introduce support to IVibratorManager HAL for vibration sessions. A
session can be started with vendor extension parcelable to support
vendor vibration sessions in the platform.

Vibration sessions allows vibrator commands to be triggered without
resetting the vibrator motor state.

Some updates to the default Vibrator implementation were required to
make sure the vibration and session callbacks are handled by the off()
method as expected by the API docs.

Fix: 345417514
Test: VtsHalVibratorManagerTargetTest
Flag: EXEMPT HAL API changes
Change-Id: Id55ce2f23656c21734f9a18f016676250eb4227b
diff --git a/vibrator/aidl/default/Android.bp b/vibrator/aidl/default/Android.bp
index 4b26640..0ac5bc0 100644
--- a/vibrator/aidl/default/Android.bp
+++ b/vibrator/aidl/default/Android.bp
@@ -19,6 +19,7 @@
     ],
     export_include_dirs: ["include"],
     srcs: [
+        "VibrationSession.cpp",
         "Vibrator.cpp",
         "VibratorManager.cpp",
     ],