Improved JavaScriptSerializer.ConvertToType Nullable handling. Fixes #19287.

**Problem:** Deserialization of Nullable enums not working.
**Cause:** ConvertToType was returning null even when the object was not a string
**Fix:** When the target type is Nullable, ConvertToType returns null if the object is an empty string, if the object is not a string and the target type is obtainable from a string then the object is converted to a string and the string to the target type.