Boolean Query Parser and Support for PubMed and Arxiv
Partially fixes #182 (closed).
This MR uses the boolexpr library to implement a generic boolean Query
type which can be used in corpus queries, and later converted into the specific query format of the external API service.
For now only Arxiv and PubMed are supported.
In the process, I have also done some refactoring which should simplify things and make them more coherent.