Automatically register a nullable custom type handler when registering a value type

This fixes issue #136 by registering the same handler for both the nullable and non-nullable versions of the type when the type is a value type.

Given the type Nullable<Foo>, LookupDbType resolves this to the type handler for Foo.
The IL generator however resolves later resolves this to call, TypeCacheHandler<Nullable<Foo>>.SetValue
This then crashes with a NullReferenceException because TypeCacheHandler<Nullable<Foo>>.handler == null