WIP: Add types to facilitate release of memory via finalizers.

I started to implement the suggestion @stevengj gave in #26. There are new types `KinsolHandle`, `CVodeHandle`, `IdaHandle` and `NVector` with finalizers. I hope this doesn't break any existing code which doesn't use the simplified interface? IDAS and CVodes are not covered yet.
These should just be `length`, etcetera: just make `N_Vector <: DenseVector` and use the standard Julia method names.