Change signature of AbstractCellFactory to use bytes

 - Change from fromStream(InputStream) to
   newCellFromBytes(byte[])

 - Also implement CellParser.fromStream()
Fix incorrect reference in newInstance methods
Fix error in AbstractCell.getBytes()
Remove skipBytes(int) assumption

 - InputStream.skipBytes(int) might not skip the inputted number
   of bytes.
Make factories and parser fields final