Fix support for nullable default values

Includes tests
JSON: Fix JToken conversion lookup

Due to a bug in Expression.Convert(),
I need to declare the parameter as
JToken so that it will find the explicit
casts in the parent type.
JSON: Temp fix for decimal serialization

Workaround until JamesNK/Newtonsoft.Json#183
is merged
JSON: Fix null JValue creation
JSON: Remove unnecessary TimeSpan hack
JSON: Fix nullable value serialization
MemberAccess: Fix default value conversion

Fixes nullables & timespans
JSON: Misc fixes

Add missing value type aliases
Properly read property values
Tests: Test default value conversions
Tests: Test JSON serialization