* Revert "Revert "fire service protocol events for frames (#11565)" (#11727)"
This reverts commit f25e2f5213.
* move the postEvent() call into a separate method
* fire service protocol extension events for frames
* start time in micros
* introduce a profile() function; only send frame events when in profile (or debug) modes
* moved the profile() function to foundation/profile.dart
* refactor to make the change more testable; test the change
* fire service protocol events by listening to onFrameInfo
* remove the frame event stream; add a devicelab test
* remove a todo
* final