Move parsing utilities  to separate module
Refactor plot types

- All plot types are now derivatives of a common base class
- Decorators will automatically add plotting functions to the top-level
lightning object, with common functions from the base class performing
the basic plotting routines
Remove top-level plot-type specific functions
Make clean an abstract method
Updated tests
Formatting and import clean up
Add a generic plot method

- Supports a generic top-level lightning.plot call.
- Did it this way rather than provide an implementation of clean in
types.base to avoid subclass implementations of clean not matching the
base class’s signature
Create session if one doesn't exist
Image conversion autocasts to array
Remove separate baseimage and imgtype methods

- Creating an image requires a different function call, but this can be
handled as a case within baseplot
- Eliminates significant code duplication
Merge pull request #3 from mathisonian/refactoring

Refactoring