Decoupled, interface-based Authentication component for PHP 5.4