feat(ripple): adds md-ripple-active support for nav active state

A significant amount of rewriting was required for this feature, but ultimately, this leaves the ripple code in a much better state.

feat(ripple): adds support for ms-ink-color to set a custom ink color

refactor(ripple): cleans up attribute names and re-arranges code

refactor(ripple): renames method to be more consistent with our naming conventions

test(ripple): adds test for custom ripple ink color

enhance(ripple): allows invalid entries for md-ink-ripple to be ignored

enhance(ripple): changes internal code for checkboxes and radio buttons to use md-ink-ripple-checkbox