WebSearch: new service JournalHintService

* Adds the search service JournalHint, that displays "Were you looking for a journal reference? Try: [link]" when the user search for a raw journal reference.
* Adds regression tests to WebSearchServicesJournalHintService.
* Uses refextract to detect if the query is a raw journal reference

Signed-off-by: Federico Poli <federico.poli@cern.ch>
48: D400 First line should end with '.', not 's'
52: D202 No blank lines allowed *after* method docstring, found 1
52: D400 First line should end with '.', not 's'
72:9: F841 local variable 'services' is assigned to but never used
85: D400 First line should end with '.', not 's'
94:16: E713 test for membership should be 'not in'
102: D400 First line should end with '.', not 's'
107:26: E131 continuation line unaligned for hanging indent
108:26: E131 continuation line unaligned for hanging indent
117: D400 First line should end with '.', not 'n'
121: D400 First line should end with '.', not 'n'
125:26: E131 continuation line unaligned for hanging indent
126:26: E131 continuation line unaligned for hanging indent
130: D400 First line should end with '.', not 'e'
143: D400 First line should end with '.', not 'e'
156: D400 First line should end with '.', not 'e'
169: D400 First line should end with '.', not 'e'
177: D400 First line should end with '.', not 'e'
189: D400 First line should end with '.', not 'e'
200: D400 First line should end with '.', not 'n'
204: D400 First line should end with '.', not 'n'
214: D400 First line should end with '.', not 'e'
227: D400 First line should end with '.', not 'e'
240: D400 First line should end with '.', not 'e'
253: D400 First line should end with '.', not 'e'
266: D400 First line should end with '.', not 'e'
276: D400 First line should end with '.', not 'e'
288: D400 First line should end with '.', not 'e'
300: D400 First line should end with '.', not 'e'
310:1: E302 expected 2 blank lines, found 1
310: D203 Expected 1 blank line *before* class docstring, found 0
310: D400 First line should end with '.', not 'n'
313: D400 First line should end with '.', not 'n'
320: D400 First line should end with '.', not 'e'
331: D400 First line should end with '.', not 'e'
342: D400 First line should end with '.', not 'e'
353: D400 First line should end with '.', not 'e'
364: D400 First line should end with '.', not 'e'
375: D400 First line should end with '.', not 'e'
386: D400 First line should end with '.', not 'e'
397: D400 First line should end with '.', not 'e'
408: D400 First line should end with '.', not 'e'
416:36: E225 missing whitespace around operator
419: D400 First line should end with '.', not 'e'
427:36: E225 missing whitespace around operator
430: D400 First line should end with '.', not 'e'
438:36: E225 missing whitespace around operator