Implementing Time.parse3339, Time.setToNow and SystemClock.setCurrentTimeMillis (both based on UI Scheduler's current time for consistency with SystemClock). Fixing strftime errors and intercepting System.currentTimeMillis

This was giving me a lot of woes, since ShadowTime's setToNow (https://github.com/robolectric/robolectric/blob/master/src/main/java/org/robolectric/shadows/ShadowTime.java) is implemented in terms of System.currentTimeMillis

Perhaps it would be best if ShadowTime itself had a setNow method that was separate from SystemClock.
I did not put those changes in this pull request, though would gladly make another for such.

Even within SystemClock, there's disagreement on what "now" represents, either the current time of the UI scheduler or some arbitrary settable long.
I based currentTImeMillis on nanoTime as this felt more intuitive, however I think those two concepts need to be merged.

Ugh, that one was terrible.