Refactor autoloader
Summary:
Split PSR-4 logic from base logic.
Allow to better check if we can include a file,
to adhere to PSR-4 specification we can't throw errors.
This lets us with some -er classes, as PHP code files and namespaces
aren't objects we can correctly. This could evolve through a better
reflection library with CodeFile and Namespace classes. We could
then extend Namespace into PSR4Namespace and get rid of -er.
Test Plan: Tests still pass
Reviewers: dereckson
Reviewed By: dereckson
Differential Revision: https://devcentral.nasqueron.org/D1617