Implemented output directory functionality.

DataContainer now has a self.output_base attribute, and this value is
propagated through the Experiment/Selection/SeqLib hierarchy if it’s
not specified in an object’s config.

Split save_data into dump_data (clears memory) and write_data (doesn’t
clear, can specify directory) methods.