fix(tooltip): hide tooltips when content becomes empty and test changes

@joshdmiller @angular-ui/bootstrap I was looking today into #875 and realized that I've got a bit of hard time testing new functionality. So I've looked a bit more into existing tests and realized that those are gray-box tests in many cases. I mean, the tests assume a lot about internal implementation, including scope management. 

I think that there are some bigger changes on the horizon for the tooltip / popover (mostly to cover #220 and programmatic triggers) so I would prefer that we move more into black-box testing where we can easily change internal structure of directives without breaking all the tests.

Let me know what do you think about the way of writing tests proposed here.