Testing basic plotting functionality using mpld3

- Added plot method to PCA
- Added example plugin to new package thunder.viz
Added matplotlib and mpld3 to requirements
Added jinja2 dependency
Made number of partitions an optional argument
Basic support for plotting via mpld3

- Added a plotting method for PCA that takes turns the analysis results
into an interactive mpld3 visualization
- Three plot types in viz/plots.py
- Colorization options for turning numerical data into colors
Restored toy fish example data
Refactoring of saving

- Create a pack utility function for putting RDD contents into a local
array
- For the user, save functions identically, but is now using the pack
function which can be used elsewhere (e.g. for plotting)
Merge branch 'basic-visualization'
Removed broken import
Smaller toy fish data
Added serialization to streaming writers
Use atomic file transfer via copy + move
Added viz package to setup
Added option to save to html file
Changed default phase mapping
Fixed indexing bug
Bug fixes
Merge remote-tracking branch 'upstream/master'
keeping keys in RDDs in nmf implemention