I noticed when fixing the tests that if the underlying datatpye is numpy.ndarray the __eq__ function thorws an exception.   Do we want to protect against this?
Traceback (most recent call last):
  File "/Users/emte4531/teravest/biom-format/tests/test_table.py", line 743, in test_ne
    self.assertTrue(self.null1 != array([]))
  File "/Users/emte4531/teravest/biom-format/biom/table.py", line 547, in __ne__
    return not (self == other)
  File "/Users/emte4531/teravest/biom-format/biom/table.py", line 500, in __eq__
    if np.any(self.observation_ids != other.observation_ids):
AttributeError: 'numpy.ndarray' object has no attribute 'observation_ids'