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.
I would tend to just call it `Kinsol` ... the fact that it is a "handle" is an implementation detail.