StatParamCalculator need not be a class var

* timestream/manipulate/pot.py (ImagePotHandler): We create a new instance of
StatParamCalculator every time we need one. There is no sense in keeping an
instance alive for each pot.
Initialize instance vars not class vars.

* timestream/__init__.py (TimeStream.__init__): Subject
Add a list of images to TimeStream

* timestream/__init__.py (timeStream.images) New attribute holding a list of
TimeStreamImage instances. If this uses too much memory, we can always use a
directory structure in _data to keep pickled versions of each TimeStreamImage.
Add pickling methods to TimeStream

* timestream/__init__.py (strip): New method to strip all unnecessary elements
from the image list.
(pickledump, pickleload): New methods to pickle TimeStream instance.
* timestream/manipulate/pipecomponents.py (__call__): Call the pickle method
everytime we write to a ts_out
Move the image pickling to TimeStreamImage

The pickling in TimeStream produces a file that is way too big. And it also
make for a process that is a memory hog. We instead choose to create a
timestream structure under _data that will house ".p" files that contain each
TimeStreamImage pickle file.
* timestream/__init__.py (TimeStream.write_image, TimeStream.write_pickled_image):
Remove methods.
(TimeStream.write_pickled_image, TimeStream.load_pickled_image): New methods to
(TimeStream.strip): Remove method.
(TimeStream.images): Remove variable.
* timestream/manipulate/pipecomponents.py (ResultImageWriter.__call__): We
when we do the image write. Remove the explicit pickling.
Fix tests for the TimeStreamImage changes.

* tests/test_classes.py: replace from_file with self.path=
* timestream/__init__.py (__init__): Make sure we raise the error when datetime
is not a datetime
[run_tests] Update test/data submodule

When running tests with ./run_tests, update the git submodule
containing the test data, using git submodule update --init.

Changes to be committed:
	modified:   run_tests
Remove extraneous print in test_classes

Remove print(iii) from TestTimeStreamIterByTimepoints in
test_classes.py.
add HACKING.md: Guide for developers

Closes #48
Fixed time range misbehavior of iter_by_timepoints