feat(tooltip): implement tooltip directive

Documentation forthcoming, but I'd like to think this code is pretty simple
and self-documenting.