Revert "Revert "Merge pull request #1704 from erikvold/1092882""

This reverts commit 3c9bbbe41382d3ba30ac6d10cab06eaa20427998.
Bug 1092882 - bug fix: setting a pref to undefined now returns a slightly different, more specific error now a=erikvold
Merge pull request #1708 from erikvold/1092882

Bug 1092882 - preferences/service should utilize Preferences.jsm r=jsantell