Fixed "Forward Transition" construction of DateTime objects.

This fixes the issue in
https://wiki.php.net/rfc/datetime_and_daylight_saving_time#forward_transitions
There is a period during transition to DST where a time (such as 02:30) does
not exist. PHP already calculated the correct timestamp for this, but failed to
"rounded forward" to the existing correct hour value.
Always reset those parameters.
Fixed forward transitions in diffs.
Group those tests a bit better, as some of the bd ones wanted a "ST" feature that doesn't exist yet.
Split up tests into their different categories.
Fix backwards transition diffs.
Move add/sub to timelib.
Fixed a few DST changeover issues.
Marking those two as XFAIL for now.
Merge branch 'date-time-dst-rfc' into PHP-5.4

This is a partial resolve of some DST issues, plenty of things to do, but as
this *does* fix a few issues it's worth merging it already.
Fixed bug #65199 (Wrong Day of Week) and fixed bug #63391 (Incorrect/inconsistent day of week prior to the year 1600)
Added validation of class names in the autoload process
Fixed ability to build non-specialized GOTO VM
Fixed tests
fix bug #49634x
Fix bug #65196

Passing DOMDocumentFragment to DOMDocument::saveHTML()
produces invalid markup, because a DocumentFragment is just a container
for child nodes and not a real node itself.
Remove 128.0.0.0/16 and 191.255.0.0/16 from the reserved list.

These were returned to the general allocation pool by RFC 3330, and hence
shouldn't cause an IP address validation failure due to being reserved. At
least 128.0.0.0/16 is in use on the public Internet today.

Fixes bug #66229 (128.0.0.0/16 isn't reserved any longer).
Fix loss of precision
fix possibly uninitialized value
Fixed bug #61645 (fopen and O_NONBLOCK)

if a mode like "rn" was passed to fopen(), then
php_stream_parse_fopen_modes() would assign O_WRONLY to
flags, because O_NONBLOCK tainted flags for the r/w/+ check