added add_data to UGrid class for working with the data associated with teh onde,s edges, etc..

still to do: add writting that to the file...
added writting associated data

plus a bunch of clean-up of the code
bunch more writting code for data attributes, etc.
Added DataSet Object, and code to write datasets to the netcdff file.
Also lots of code for automatically wirting the correct attributes to
reference the grid, and only write what is there.

Still to do: file reading code, ideally lazy-referencing the underlying netCDF4
variables.
cleaned up ugrid reading code -- and added ability to read boundaries

still need to add reading associated data
cleaned up reading code -- now in separte files, and reads all the coordintae variables, etc.

still need to read data variables.
added code to read data associated with the mesh

TO DO:

Allow the data to be brough in as references to netCDF4 variables
-- i.e. lazy loading.

More testing -- not even sure if the reading code can read the test file
  written by the writting code!

time! DataSets are assumed to be a single time step (or no time) now
-- that's pretty broken. (or limited anyway)
added data_set.py file
added "mesh" asstribute to DataSet variables written to netcdf
Fixes https://github.com/pyugrid/pyugrid/issues/24 and passes PEP8.
Merge pull request #25 from cbcunc/travis

Fixes https://github.com/pyugrid/pyugrid/issues/24 and passes PEP8.
fixed a couple bugs in reading/writing

and added a few "round trip" tests...though a lot more would be good.
added load_data flag to loading code, so it will not load by default.