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.
refactor(tooltip): update auto placement to match Bootstrap

Refactored auto placement to match Bootstrap implementation.  Updated
documents to match Bootstrap documentation.
refactor(tooltip): combine autoplace ifs and chain if statements together
fix(tooltip): restore space between element and tooltip arrow

Tooltips positioned top and left lost their gap due to the class not
being applied before getting the offsetHeight and offsetWidth