added SequenceCollection and Alignment objects

addresses #26 and #27

These are going to need some work for computational efficiency, and probably for using numpy objects instead of python objects, but is a solid first pass at functionality and interface. I'm keeping track of the next steps in #194.