Try and improve the vertical alignment

* extract-stamps.py: New parameter jcent in emission line table is the
  y-pixel of the center of the slit.  Unless it is zero, in which case
  we just take ny/2, as before.  Currently, most of the entries are
  zero.  In fact, this design is not very good - it would be better to
  do it per-order, not per-emission line.  I will revist this once I
  have the smooth interpolation sorted out.
Improve robustness

* extract-stamps.py: Trap errors in the linear wavelength scale solver.
  Simply skip emission lines that do not work.
Linear interpolation in extract_orders.py
Determine the illumination pattern of the orders

* quartz-model.py: Fits erf window functions to each order in the quartz
  lamp image.  Writes quartz-database.json, which can be used for
  de-overlapping the orders.