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
The parentheses are more confusing to me. I expect them to contain two or more operations. They have no function here, so I removed them. Visually, it's easy for me to separate the conditions on the `||`. If the readability is too low, we can drop each condition to a new line, although, I'm opposed to that, as well.