refactor(tooltip): remove observers

Lazily evaluate values only when they're needed.

Breaking change:
- Set up triggers only once, so the triggers can't be changed later