Deeply get a value from an object by a path string.
The type of the object to get the value from
The return type of the value
The object to get the value from
The path string, e.g. a.b.c
a.b.c
Optional
The default value to return if the path does not exist
Deeply get a value from an object by a path string.