fix list matrix iteration and conversion bug

- List and Yale matrices with a single dimension of length 1 would fail to iterate in
  each_stored_with_indices and doesn't set the default value.  Fallback to
  each_with_indices fixes this for now.  It would probably be better to fix
  this in the C code directly, but I still need to figure out how to do that
  without breaking other things.

- List and Yale matrices would fail to convert from complex to non-complex
  dtype because of a failing default value conversion.  Added a method to fix
  this in the ruby code when calling cast.  This might be better fixed at some
  point by changing how rubyval_to_cval works.