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.
It might be nice to define `nvector{T<:Real}(x::Vector{T}) = nvector(copy!(similar(x, RealType), x))` too.