Minor sknano.io class updates/edits.

Changing the names of the custom error classes.
Removing the redundant code from the subclasses of
StructureIOError class. Updating the module docstrings.
adding test data for sknano.io tests
Changing NanotubeBundle to NanotubeBundleBase

Instead of inheriting from the NanotubeBundleMixin, it makes
more sense to just create a base nanotube bundle class that
has an __init__ method to initialize the attributes of the
class and implements the NanotubeBundleMixin methods.

I can't think of any case where the NanotubeBundleMixin
class would be useful by itself or without an __init__ method
that initializes the expected attributes and therefore it makes
more sense now to just replace NanotubeBundleMixin inheritance
with NanotubeBundleBase
Adding checks for when `nz` is None.
updating docstring name for NanotubeBundleBase
updating code to use NanotubeBundleBase class
Refactoring nanogen command-line script.

Removing the `tubegen` function and corresponding command-line
functionality.

Updating the subparser commands and setting the default
generator class based on subparser name.
Adding new command-line script: analyze_structure

Adding new script for processing structure data.
Updating setup.py to include script in console_scripts list
for entry_points.
adding release.sh and pavement.py from the scipy git repo
adding setupegg.py script
Started customizing for my package requirements.
Removing _tubegen module from package.
removing self.L0 attribute
fix Lz bounds calculation
set L0 to initial Lz parameter not calculated Lz
Updating get_Ch_indices function.

get_Ch_indices can now parse the chiral indices for 4 character
strings of the form 'NNMM'
adding new utility sub-package for molecular dynamics
Writing skeleton StructureAnalyzer class.
explicitly return None in get_Ch_indices if Exception is raised
adding examples to docstring