Add ability to set custom firefox profile with user preferences

This is the beginning of my attempt to address #64. So far, it only
sets user preferences, as defined in [mozillazine][1], and without any
validation of types or preference names. I'm planning to add an
add_extension sub, as that's what I initially wanted this for in the
first place.

There's still a lot up in the air: should it be its own project
entirely? If it should go in Selenium::Remote::Driver, does
Selenium::Remote::Driver::FirefoxProfile make sense as a name? Should
the tests be in its own separate file? I think I'll eventually just
add the tests to the 01-driver.t, so I don't have to duplicate the
mocking/recording code, but for now I'm keeping them separate for ease
of execution.

[1]: http://kb.mozillazine.org/About:config_entries