       world.send 'inspect', child
   inspect: (world, sprite) -> world.put 'inspected', sprite
   selected: (world) -> world == world.get('inspected')
-  determine_next_position: (world, args) -> world.get('next_position') || world.get('position')
 
   # defaults
+  
   position:  [0,0]
   next_position: null
   direction: [1,0]
   obstruction: true
+
+  # geometry
+  
   x: (world) -> cell_position(world, vector.axis.x)
   y: (world) -> cell_position(world, vector.axis.y)
   angle: (world) -> vector.angle world.get('direction')

    translate = "translate(#{world.get('x')},#{world.get('y')})"
    rotate = "rotate(#{world.get('angle')} #{center} #{center})"
    "#{translate} #{rotate}"
  behavior:
    first:     []
    repeat:    []


  running: 'first'

  determine_next_position: (world, args) -> world.get('next_position') || world.get('position')

  prepare: (world, args) ->
    word = world.get('language')[args]
