Feature filtering (in progress)
(rebased to master post-Mapillary merge)
Rename Features to Map Data..
* move GPX and Mapillary layers to Map Data
* put feature filters and layer data into show/hide containers
* cleanup css
put layer-gpx after layer-data
(closes #2352, #2335)
initial wireframe style (key 'w')
(also fix gpx layer, now on top of data, to not steal pointer events)
Area filling options:  wireframe, partial, full..
* implemented as css classes on surface element
* patterned fills can be done with css too.. removed the
  code from areas.js to set patterned fill on each element)
* dummy test code in `map_data.js` uses 'w' key to toggle..
Add area fill selector (wireframe/partial/full) to map data panel
also:
* style dark tooltips with shortcut keys
* use uppercase for shortcut keys
prevent most operations on things connected to hidden features..
Fix the source switcher
'Rail' feature filter should not match if it is also a highway.
Revert some of 2832041 because of Firefox pattern fill issues
Looks like styling the element is the only way to achieve this after all..
add data icon, fix button style
new icon
Update help text because GPS tracks are purple now
Remove footer opacity dimming
re: https://github.com/openstreetmap/iD/pull/2357#issuecomment-60106754
better point/building culling based on viewport size
Don't hide features that the user just created
Don't include hidden vertices in drawHover
Show auto-hidden features as disabled checkboxes with tooltip
also rearrange map data panel to put features last
add deep equals to extent
bump chai to 1.9.2 and fix tests affected by change in equality testing
re #2388