feat(tooltip): add ability to auto position tooltip

Add ability for tooltip (and any dependent directives) to be auto
positioned.  Placement option has been enhanced to look for `auto`.  If
present, tooltip will try to position itself in viewport.  A preferred
placement can also be specified by appending desired placement to auto.
Tested against Win 7 Chrome, Firefox, IE 9-11.
Any reason you didn't go for the [bootstrap implementation](https://github.com/twbs/bootstrap/blob/master/js/tooltip.js#L189)? The "while until 3" loop is a bit exotic. Also this part should live in a separate private function if possible (to make the code more readable and reduce the complexity).