DocExtract: several improvements

* Accepts Publications as reference section.

* Refactors book handling and search.
  (closes #959)

* Daemon extracts all added pdfs.

* Correctly handles PDF/A files.

* Adds LIGO and LHCP report numbers to the kb.

* Adds the filename of the extracted files in the 999C6f field.

* Converts arxiv urls to report numbers

* Adds support for hdl identifiers.

* Sets a priority on which title form is the most important.
  References will be given priority over anything else while Reference
  will rank last with Bibliography in between.
  That means that if "Bibliography" is found in the text, we assume it is
  the reference section and we don't look for a section titles "Reference".

* Improves error message when pdftotext is missing.

Signed-off-by: Alessio Deiana <alessio.deiana@cern.ch>
Tested-by: Samuele Kaplun <samuele.kaplun@cern.ch>
1: D400 First line should end with '.', not 'e'
4: I102 copyright year is outdated, expected 2014 but got 2011
59:1: E303 too many blank lines (3)
59: D203 Expected 1 blank line *before* class docstring, found 0
59: D400 First line should end with '.', not 't'
63: D203 Expected 1 blank line *before* class docstring, found 0
63: D400 First line should end with '.', not 'n'
63: D205 Blank line missing between one-line summary and description
63: D207 Docstring is under-indented
72: D400 First line should end with '.', not 'l'
93: D400 First line should end with '.', not 'e'
103: D400 First line should end with '.', not 'e'
124: D400 First line should end with '.', not 'g'
138: D400 First line should end with '.', not 'g'
160: D400 First line should end with '.', not 'd'
173: D400 First line should end with '.', not 'd'
182: D401 First line should be imperative: 'Extract', not 'Extracts'
182: D209 Put multi-line docstring closing quotes on separate line
182: D400 First line should end with '.', not 'm'
182: D205 Blank line missing between one-line summary and description
200: D400 First line should end with '.', not 'd'
231: D202 No blank lines allowed *after* function docstring, found 1
231: D400 First line should end with '.', not 'd'
267: D103 Docstring missing
279: D103 Docstring missing
288: D103 Docstring missing
298: D401 First line should be imperative: 'Check', not 'Checks'
298: D400 First line should end with '.', not 'd'
304: D400 First line should end with '.', not 'y'
336: D103 Docstring missing
340: D103 Docstring missing