Bug 905530 - Add user phrase dictionary support.

Rebased on top of the master branch and addressed the issues mentioned in the [feedback](https://github.com/PinZhang/gaia/commit/54f045c547d72e699be769630bf35f479e67257b) .