refactor(ripple): adds support for non-fixed tabs

Closes #825.
Closes #460.
Basically they do the same thing (`$mdMedia will call `matchMedia` with `$mdConstant.MEDIA.sm` internally). Using `$mdMedia` also has the benefit, that it caches it's results (and updates them upon window resize).

But right now `$mdMedia` is part of the sidenav module, so there is no guarantee it will be available to other modules. IMO, it is a very useful service and there is nothing sidenav-spedific about it, so making it a core service makes lots of sense.