Editor

@kadst43 @eric79 

I'm not completely done here, but I figured I'd give you guys the opportunity to get a start on this if you want.

TODO:
- Build trigger JSON from dialog
- Finish argument type handlers
- Modify rover.js to fix moving rover around in editor when a map is loaded

Changes:
- Modified grid.js to allow rover placement in editor without map loaded
- Modified rover.js to remove implied knowledge of other nodes in the scene
  - Moved scenario changed listener to scene.js
- Added rovers to editor
- Modified isAtPosition to take a 2 element array rather than 2 individual numbers
- Cleaned up action and boolean function scripts
- Modified editor styles
- Added trigger dialog
  - Independently handle all conditions and actions
  - Independently handle most argument types
I think that's spelled `primitive`.