Sugestão novo design para crawlers. Mais autonomia.
Merge branch 'crawler-arch' into merge-branch

Conflicts:
	src/projeto/Main.java
Crawler.update() lança Exception.
BRCrawler.update lança Exception.
FTS_DB.add() agora recebe uma URL para baixar o PDF (sync)
Adiciona um campo 'cached' em cada documento

Para evitar trabalho duplicado, os crawlers vão poder inserir um documento
vazio com 'cached'='no'. Caso haja algum problema, pode-se reiniciar o download
desses PDFs sem obrigar o crawler a achar o mesmo PDF outra vez

FTS_DB.isIndexed() ignora documentos com 'cached'='no'

FTS_DB.touch() insere um documento vazio com 'cached'='no'
Adiciona Crawler.enqueuePdf() para download de PDFs async

Crawler.enqueuePdf() primeiro sinaliza que vai baixar um PDF chamando
FTS_DB.touch() e depois adiciona um thread para baixar e indexar esse PDF no
executor do crawler
BRCrawler indexa todas as páginas do Diário Oficial da União/1 de 04/06/2013
"HttpRequest.get" captura de html. Auxilia crawler.
"Regex.find" busca com regex. Auxilia crawler.
"DateTime.format" auxilia manipulação das urls.
Rename DateTime -> DateUtil
DateUtil e Regex. Bugs fixed.
CECrawler. Uso HttpRequest, DateUtil e Regex.
Merge remote-tracking branch 'origin/crawler-arch'