DI: Added smart inject functionality to annotations @inject

Now you can use injects in all these ways:

	<?php

	namespace Foo\Bar;

	use Nette\Security;
	use Nette\Security\User;
	use Nette\Security\Identity as NIdentity;
	
	class TesterClass {
	
		/**
		 * @inject
		 * @var TesterClass
		 */
		public $testerClass;
	
		/**
		 * @inject
		 * @var Security\IAuthenticator
		 */
		public $authenticator;
	
		/**
		 * @inject
		 * @var User
		 */
		public $user;
	
		/**
		 * @inject
		 * @var NIdentity
		 */
		public $identity;
	?>