chore(changelog): Add breaking changes section
chore(build): Simplify grunt tasks, update dependencies

* Move custom html2js task to grunt-html2js npmTask
* Move site task to simple grunt-contrib-copy and grunt.template.process
 step
* Centralize module information into one config object
* Centralize demo assets into one folder
refactor(pagination): More efficient when no maxSize set (Closes #305)
chore(build): Fix dependencies causing duplicate modules, fix markdown
feat(rating): add rating directive

Closes #337
demo(typeahead): fix a link to the select directive
fix(dialog): IE8 fix to not set data() against text nodes

Closes #328
feat(position): add new positioning service
fix(typeahead): fix matches pop-up positioning issues

Closes #262, #282
fix(dialog): close dialog on location change

Closes #335
fix($dialog): fix $apply in progres on $location change
docs($dialog): add missing method isOpen in doc
fix($tooltip): fix positioning issues in tooltips and popovers

To calculate the relative position of the tooltip or popover, the
$tooltip service now uses the $position service, which resolves many
positioning bugs.

Closes #265, #115
feat($tooltip): support for custom triggers

The `$tooltip` service now has two ways to customize the default triggers.
The `$tooltipProvider` takes a `trigger` option and the `*-trigger`
attribute can be applied to a single element.

The `$tooltipProvider`'s `trigger` option overwrites the default value
but the attribute will overwrite both.

A few logical default triggers are supported out of the box and have an
associated map to determine which hide trigger to use. `mouseenter` ->
`mouseleave`, `focus` -> `blur`, and `click` -> `click`. If any other
trigger is provided, it will be used to both show and hide the tooltip.

Custom hide triggers are not yet supported as they would require some
code trickery due to the way `$observe` works.

Closes #131
chore(build): properly generate depndencies on tpl modules

Closes #365
chore(release): 0.3.0
chore(release): starting 0.4.0
fix(tooltip): fix positioning error when appendToBody is set to true

Closes #387

use offset function instead position function when appednToBody is set to true
fix(tooltip): close tooltips appended to body on location change

Closes #345
chore(build): Use grunt-karma for testing