gflymad: better icon
circle_mirrors: adjustable range (and fix off-by-one)
targeter: make workable again

port to /experiment/laser message and remove
experimental logic (borders, etc)
data: add new template
targeter: MicroPosition.laser is now a bitmask

This affects /experiment/laser and any node which
sends flymad.msg.MicroPosition messages. Now the
.laser member signifies which of the lasers are
turned on. This sets the foundation for moving
laser power/intensity/etc configuratin out of
band into a new message type
targeter: add LaserState service call

this allows experimental nodes to block
until the targeter is up, and prevents messages
(such as turning off the lasers at the start
of the process) getting lost
add infrastructure for configurable lasers

this introduces a new LaserConfiguration message in preparation
for v2 hardware where lasers have adjustable frequency and
intensity.
flymad_micro_v2: support new laser controller

implement support (arduino and corresponding ros node)
for the version2 flymad laser controller. The new
hardware supports
 * 3 laser channels, each laser
   * may be pulsed
   * variable intensity (requires an adjustable laser)
   * its current measured
   * switched on/off
gflymad: support new features in UI

* can launch v2 galvo controller
* can launch circle_mirrors
* can launch configure_lasers