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.
You don't need `length(x)` or `size(x)`; these are provided automatically once you have `size(x, d)` and you have a subtype of `AbstractArray`.