===============================================================================
 DOCUMENTAÇÃO 
===============================================================================
 - Estados possíveis:
	0 = Ok;
	1 = Erro Interno;
	2 = Tempo Esgotado;
	3 = Cancelamento;
	6 = Resposta Inválida;
	7 = Formato incompatível;
	8 = Codificação incompatível;
	9 = Dados inválidos.

===============================================================================
 BUGS NOS BROWSERS
===============================================================================
	- Issue 119256 : Chrome17 doesn't support JSON responseType for XMLHttpRequests
 	                 http://code.google.com/p/chromium/issues/detail?id=119256

===============================================================================
 NOTAS
===============================================================================
 - N1 : "o.timeout" só pode ser alterado depois do open(), por imposição do
        IE10 -- que lança um "InvalidStateError". O standard não o obriga, mas
        outras propriedades têm esse comportamento ("withCredentials" por
        exemplo).
        https://dvcs.w3.org/hg/xhr/raw-file/tip/Overview.html#the-timeout-attribute
        http://msdn.microsoft.com/en-us/library/ie/cc304105%28v=vs.85%29.aspx

 - N2 : O PHP codifica cabeçalhos com UTF-8 convertendo os caracteres não-ASCII
        para o código octal correspondente (exemplo: "ção" =>
        "\303\247\303\243o");decodeURIComponent(escape(<texto>)) consegue
        inverter essa codificação.
        @see
         - http://ecmanaut.blogspot.pt/2006/07/encoding-decoding-utf8-in-javascript.html
         - http://monsur.hossa.in/2012/07/20/utf-8-in-javascript.html