Better organization, PSR0 compliance, Logging capability to either STDOUT or a filename, config options, and extension path