Add spec on Time marshalling and nanoseconds.
Added primitive to manually set Time#nsec.
Serialize and deserialize nanoseconds for Time objects.
Merge pull request #2695 from razielgn/time-marshal-nanoseconds

Marshal.dump for Time should carry over nanoseconds with full precision.