Implement device filtering UI (bug 969244)

https://bugzilla.mozilla.org/show_bug.cgi?id=969244

**TODO**:
- [x] Unit Tests
- [x] Functional Tests
- [ ] Move some CSS rules outside of `compatibility-filtering.styl` (want to get feedback on it first)
- [x] Fix issue with arrow on Firefox OS
- [x] Desktop Screenshots
- [x] Firefox OS Screenshots
- [ ] Android Screenshots

**Screenshots (Desktop):**
![popular](https://cloud.githubusercontent.com/assets/187006/4290123/1d1c8974-3db9-11e4-92df-0b61fadee375.png)
![new](https://cloud.githubusercontent.com/assets/187006/4290121/1d1a614e-3db9-11e4-83b0-5a0c4ac9a013.png)
![category](https://cloud.githubusercontent.com/assets/187006/4290148/4b892bc8-3db9-11e4-853f-bc96780ec5f5.png)
![search](https://cloud.githubusercontent.com/assets/187006/4290122/1d1c3550-3db9-11e4-80ec-84a51c01fd50.png)
![select_focused](https://cloud.githubusercontent.com/assets/187006/4290124/1d312834-3db9-11e4-9d5d-bdf9489db3c0.png)

**Screenshots (Firefox OS):**
![firefoxos_new](https://cloud.githubusercontent.com/assets/187006/4291041/ee397b32-3dc0-11e4-8640-3261ce4de399.png)
![firefoxos_category](https://cloud.githubusercontent.com/assets/187006/4291038/ee026af2-3dc0-11e4-8fd0-44d9d277af9e.png)
![firefox_search](https://cloud.githubusercontent.com/assets/187006/4291037/edfbf410-3dc0-11e4-818f-4442c46eeda6.png)
![firefox_select_focus](https://cloud.githubusercontent.com/assets/187006/4291040/ee1e2ca6-3dc0-11e4-800f-275dff444990.png)


**Notes:**
- Styling a `<select>` is hell. But I didn't want to re-invent the wheel, so I tried to use one anyway and style it the best I could. On Android and Firefox OS, the options are rendered in some kind of native window, so it's fine, it's not great on desktop, but good enough IMHO.

This should be ok unless we need to support IE < 9