Add Navigation Timing via Resource Timing where available

Also added actual requested URL by SPF and cached info to timing response object.
Yes, makes sense, however the startTime adjustment question is still not clear.
For both cases 1 and 2 above, the startTime retuned from Resource Timing API will be used: for case 2 it's just a simple assignment `timing['startTime'] = xhr['resourceTiming']['startTime']` but for case 1, does it still need to adjust the initial `navigationStart = spf.now()` with the retuned startTime from Resource Timing API?
E.g.:
* a `navigate` type request happened
* `navigationStart` was set to absolute `spf.now()`
* after `xhr` is returned, get Resource Timing API relative `startTime` (few ms)
* add `startTime` to `navigationStart`