Extract profiling to notifications + formatter
update yarddocs
use formatter loader to configure profiler
use formatter helper to run notification (makes it less deterministic on time)
Changelog for #1515
[skip ci]
memoize profile notifiction methods
dont load profile formatter when existing formatter implement dump_profile