Implemented immutable DateTime objects as the DateTimePoint class.
Added a test case for DateTimePoint.
Added a few missing TSRMLS_DC/TSRMLS_CC.
Added another test to test the unmodified inherited methods.
Rename DateTimePoint to DateTimeImmutable.
Fixed crash bug when the non-OO interface was used.
Make DatePeriod support DateTimeImmutable as well.

If the start element is a DateTimeImmutable object, then all returned objects
are also DateTimeImmutable objects. If the start element is a DateTime object,
then all returned objects are DateTime objects.