Return types

This is a pull request to implement the return type RFC: https://wiki.php.net/rfc/returntypehinting

Presently not ready for merge (there are a few bug fixes still needed).
It's actually critical that it autoloads if necessary. Unless I am misunderstanding what you are saying, it should be `ZEND_FETCH_CLASS_SILENT` and not `ZEND_FETCH_CLASS_NO_AUTOLOAD`.