Tweaks to IsMobile().

- Allow a call of IsMobile(null) to reset the mobile detection logic.
- Make the force no-mobile cookie take precedence over other detection.
- Make the X-Device header take precedence over the rest of detection.
Merge branch 'stage' of github.com:vanillaforums/Garden into stage