*****  Mo 17. Dez 14:49:54 CET 2018  *****

Added prompt_toolkit and pygments modules for fancy prompting.
Refactored loadfile() to process a multi-line string (as well as  files).
Edited banner to begin with a line break.
Added color syntax in remove_duplicates() dialogs.
Drafted add_entries() function to add entries manually.

*****

Implemented add_entries() to manually add entries though the prompt.
Refactored merge() to take list of Bib() objects as argument (optional).
Added color syntax to filter_field() dialog.
Added color syntax to merge() dialog.


*****  Di 18. Dez 15:27:46 CET 2018  *****

Implemented edit() to manually edit the bibmanager database.


*****  Fri Dec 21 19:46:20 CLT 2018  *****

Implemented search() to querry into bibmanager database by author,
year, or keywords in title.
Added documentation to Bib.__contains__().


*****  Sat Dec 22 10:03:49 CLT 2018  *****

Removed cond_replace() function. Use cond_find() with join() instead.

*****

Renamed cond_find() to cond_split().
Renamed cond_split() arguments from line,regex to text,pattern.

*****

Added ret_nests argument to cond_split(). When enabled, return the
nested level for the returned substrings.

*****

Changed default behavior of nlev in cond_split() to assume level of
first character in text.

*****

Added 'nested' argument to parse_name() to receive nested level of
input name.

*****

Removed 'protect' argument from cond_split().

*****

Swapped order of first two arguments in cond_next() to have the same
format as cond_split().

*****

Added documentation to next_char() and last_char().
Caught special case when the input string has only blank characters
(return zero).


*****  Sun Dec 23 10:00:15 CLT 2018  *****

Cleaned up many of the docstrings.
Prepended 'r' to docstrings where I need to escape chars.
There are still many functions that need a proper example (wait until
we have the project structured as a package, and integration tests
and examples).

*****

Implemented ordinal() function to compute ordinal representation
of numbers.

*****

Implemented display_bibs() function to show color-syntax bib
entries on screen.
Updated remove_duplicates(), filter_fields(), and merge() to use
display_bibs().

*****

Some minor clean up.

*****

Bumped bibmanager version to 0.1.0.
This next merge closes #1


*****  Mon Dec 24 15:28:54 CLT 2018  *****

Initiated latex management file (latex_manager.py):
Implemented no_comments() to remove comments from latex text.
Implemented citations() to extract citation keys from latex text.

*****

Proposed project/file structure:
utils.py          Utilities
bib_manager.py    BibTeX/database management
latex_manager.py  LaTeX management
ads_manager.py    ADS I/O management
cli_manager.py    Command-line-interface management

*****

Implemented build_bib() function which generates a bib file
from an imput tex file.

*****

Renamed bibm.py to bib_manager.py.
Fixed typo in buid_bib() output file.

*****

Bumped bibmanager version to 0.2.0.
This next merge closes #2


*****  Tue Dec 25 16:36:54 CLT 2018  *****

Added the bibmanager __init__.py file (placeholder mostly,
not much going on there).
Added setup.py file.

*****

Drafted the command-line interface (main command calls).
(just the facade, still need to document and link the commands to
the bibmanager calls).
This is implemented in the __main__.py file.

*****

Cleaned up bib_manager.py, added __all__ list of functions.

*****

Added bib_manager.py functions into bibmanager __init__.py package.

*****

Implemented init command-line interface and documentation.

*****

Added copyright text at the top of files.

*****

Implemented edit command-line interface and documentation.


*****  Wed Dec 26 10:04:30 CLT 2018  *****

Implemented merge command-line interface and documentation.
Tweaked main docs to display 'command' rather than a list of all
the commands.

*****

Implemented export command-line interface and documentation.


*****  Thu Dec 27 16:12:04 CLT 2018  *****

Raise exceptions for input entries without required fields in Bib().
Raise exceptions for user-input errors in loadfile().
Caught dry-run case in add_entries(), i.e., no new entries.

*****

Implemented add command-line interface and documentation.

*****

Added bibfile argument to build_bib() function, to redirect output.
Raise exception if there is bibfile is None and there is no
bibliography call in the .tex file.

*****

Implemented bibtex command-line interface and documentation.

*****

Renamed setup command to config.

*****

Added 'bold face' to some titles in command-line interface text.

*****

Renamed Sauthor() namedtuple to Sort_author().
Re-arranged Author() fields to be consistent with Sort_author().

*****

Modified Bib.__containts__() to match only against the first author
if the querry string begins with '^'.

*****

Raise exceptions for invalid inputs in parse_name().

*****

Re-factored bm.search() to search multiple authors.
Renamed 'author' argument to 'authors'.
Raise exceptions for invalid inputs.

******

Tweaked display_bibs() function to receive None as labels argument.
Added the function to __all__.

*****

Implemented repr_author() function to get a string representation of
an Author namedtuple in 'von Last, Jr, First' format.


*****  Fri Dec 28 09:51:56 CLT 2018  *****

Implemented get_authors() method for Bib() object, to get the string
representation of the author list of the entry.

*****

Implemented search command-line interface and documentation.

*****

Added license to main CLI docs.

*****

Bumped bibmanager version to 0.3.0.
This next merge closes #8


*****  Sat Dec 29 17:05:22 CLT 2018  *****

Implemented clear_latex(), compile_latex(), and compile_pdflatex()
in latex_management.py.  These functions compile a .tex file into
pdf using the latex or pdflatex directives.

Implemented ignored() context manager to simplify file deletions
withour running into exceptions.

*****

Added cd() context manager to change folders.

*****

Modified compile_latex() and compile_pdflatex() to work when called
from different folders where the .tex file is.

*****

Implemented pdflatex command-line interface and documentation.
Renamed pdftex to pdflatex to avoid confusion.

*****

Implemented latex command-line interface and documentation.

*****

Simplified cd() context manager, using a decorator.

*****

Some cosmetics cleanup in __main__.py

*****

Added message at end of merge() call with the number of new entries.

*****

Fixed bug in compile_pdflatex(), I forgot to call build_bib().

*****

Modified build_bib() to return the list of missing keys.
Used this output to display missing refs at the end of
compile_latex() and compile_pdflatex().

*****

Modifications to bm.export() function:
Added header text at begining of bibmanager output .bib files.
If bibmanager attempts to overwrite a user's bibfile (one that does
not begin with the bibmanager header), make a copy labeled as:
orig_yyyy-mm-dd_bibfile.

*****

Fixed bug in bm.export() function, check that input file exists
before checking for overwrite.

*****

Added try-finally sequence to bm.edit() to ensure always removing
the temporary file.

*****

Minor cosmetics in bm.edit().

*****

Bumped bibmanager version to 0.3.1.
This next merge closes #9


*****  Sun Dec 30 11:39:31 CLT 2018  *****

Drafted config file, and config_manager.py to handle the variables
in the config file.
Implemented cm.reset().

*****

Implemented cm.get_key() function to display config values.

*****

Implemented cm.set_key() function to set bibmanager config values.
Display help when input value is None (implemented for 'style' and 'paper').

*****

Updates to cm.set_key() function.
Added docstring, put exceptions before updating the values,
added help docs for 'text_editor' option.

*****

Added help docs for 'adstoken' key.

*****

Split cm.get_key() function into get() and display().
Added examples to docstring.

*****

Split cm.set_key() function into set() and help().
Added examples to set() docstring.

*****

Sorted order of functions in config_manager.py (cosmetics).

*****

Added list of functions to __all__ in config_manager.py
Cleaned up bib_manager.py

*****

Modified bibmanager to take the pygments style from the config file.

*****

Renamed bm_home to HOME in bib_manager.py.
Ultimately, need to set this in a single location once I factor the
code into a package.

*****

Modified bm.edit() to take the text editor from the config file.
Still, need to figure out how to deal with windows platform.

*****

Fixed bug in cm.set() to accept 'default' for text_editor.

*****

Modified lm.latex() and latex CLI to get default paper format from
the config file.

*****

Implemented config command-line interface and documentation.

*****

Bumped bibmanager version to 0.3.2.
This next merge closes #15


*****  Mon Dec 31 22:12:36 CLT 2018  *****

Moved Bib()'s get_authors() method into bm.get_author() function,
to make it accessible to others without needing to make a Bib()
object.  Pointed get_author() method to the get_author() function.

*****

Created ads_manager.py file to handle ADS related requests.
Implemented am.search() function to make querries into ADS.


*****  Tue Jan  1 08:50:45 CLT 2019  *****

Modified adstoken config parameter to ads_token.
ADS functions are pending (broken at this point).

*****

Added utils.py file to keep low-level utility functions and constants
Adjusted latex_manager.py, __main__.py, and bib_manager.py
(but still need to move many functions from bm into utils).

*****

Moved low-level functions from bib_manager.py into utils.py

*****

Moved bm.get_authors() function to utils (and added docstrings).
Added BM_CACHE to utils.

*****

Implemented am.display() to show a sub-set of entries on the prompt.
Renamed rows to cache_rows in am.search() to distinguish from
ads_diplay rows.

*****

Implemented am.manager() function defining protocol for ADS searches:
- search new querries or cache continuation
- load, save, and delete cache
- display entries
Fixed typo in indices for am.display() print statement.

*****

Added ads_diplay to the bibmanager config keys.
Tweaked config_manager.py code to user more f-strings.

*****

Implemented ads-search command-line interface and documentation.

*****

Implemented am.add_bibtex() function to add entries into the bibmanager
database by passing ADS bibcodes.
Partially implemented ads-search command-line interface and docs.
Still need to implement multi-entries case.
Fixed typo(?) in ADSURL constant string.
Shortened the length of ADS entries display from 80 to 76 characters.

*****

Finished implementing ads-search command-line interface and docs.


*****  Wed Jan  2 20:22:46 CLT 2019  *****

Refactored am.add_bibtex() to consider updated bibcodes
(arxiv to published).

*****

Implemented am.update() function to launch an ADS querry on the
bibmanager entries that have an 'adsurl' field.

*****

Fixed behavior issue in bm.filter_fields() function to truly take
new entry, when findinf duplicate fields (before it was also
requesting better publish status or different keys).

*****

Fixed indentation in bm.filter_fields() function to four spaces.

*****

Implemented am.key_update() to adjust keys of entries that were
updated from their arxiv version.
Potentially, it can be extended to all entries (I'm thinking wrong
user input in keys).
Added update_keys argument to am.add_bibtex() and am.update()
functions to indicate when to modify the keys of arxiv-updated
entries.
Added some on-screen reports of arxiv updates in am.add_bibtex().

*****

Implemented ads-search command-line interface and documentation.
Fixed a few typos in command-line function docstrings.

*****

Some tweaks to the main-help display (mostly, avoiding ANSI color
encoding).

*****

Bumped bibmanager version to 0.4.0.
This next merge closes #3


*****  Thu Jan  3 23:43:01 CLT 2019  *****

Updated copyright year all over the place.

*****

Created sphinx docs.
Drafted main structure of the docs.
Added logo.
Wrote intex.rst
Wrote getstarted.rst (quick example is TBD)
Drafted bibtex.rst, latex.rst, and ads.rst sections (need to copy info from
argparse docs, expand examples).
faq.rst sections needs a complete make over.
Need to figure out how to do/automate API docs (for api.rst).
Wrote contributing.rst and license.rst sections.
Updated README to point to docs.


*****  Sun Jan  6 13:08:42 CLT 2019  *****

Finished drafting a decent bibtex.rst docs page.

*****

Unified one-liner descriptions between main and command help menus.
Change 'bibkey' to 'key' in bibm search output.
Edit docs to refer to 'config params' rather than config keys (to
avoid confusion with the BibTeX's key).

*****

Drafted latex.rst docs page.
Revised a few details in bibtex.rst and command-line docs.

*****

Drafted ads.rst docs page.
Fixed typos and style here and there.

*****

Fixed bug in am.add_bibtex(), assign updated key to new Bib() object
when updated from arxiv to peer-reviewed.

*****

Drafted faq.rst docs page.
Added link to BibTeX naming format in search docs.


*****  Mon Jan  7 18:21:04 CLT 2019  *****

Tweaked ads-add parser to split bibcode and key into two arguments.
Unified ads-search argparse docs with sphinx docs.
Fixed bibm search usage's text to be consistent with docs.

*****

Bumped bibmanager version to 0.5.0.
This next merge closes #10

*****

Added bibcode to Bib() object.

*****

Updated Bib.published() to check with bibcode instead of adsurl.
Updated bm.merge() and bm.loadfile() to check duplicates by bibcode
instead of adsurl.

*****

Added script to prefer peer-reviewed over arxiv entries in
remove_duplicates() function.

*****

Changed indentation in bm.remove_duplicates() func to four spaces.

*****

Updated am.update() to look directly at bibcodes.
Updated bibcode extraction in Bib.__init__() to remove any backslash.
Added bibcode in cli_search() report.
Updated sphinx and argparse docs according to adsurl/bibcode changes.

*****

Updated bibmanager url in bm.export().

*****

Bumped bibmanager version to 0.5.1.
This next merge closes #17

*****

Added key and bibcode arguments to bm.search() function.

*****

Updated cli_search() function to incorporate new search fields to
command-line interface.
Updated search argparse and sphinx docs.

*****

Bumped bibmanager version to 0.5.2.
This next merge closes #19


*****  Tue Jan  8 09:34:46 CLT 2019  *****

Deleted cm.reset() function.
Added default-config copy in bm.init().

*****

Added cm.update_keys() function to update bibmanager config.
Refactored bm.init() to truly reset database, and to querry when
to reset database and config.

*****

Added database and config mutually exclusive options to init command
allowing to reset only the database or the config file.
Updated argparse and sphinx docs accordingly.

*****

Renamed init command-line command to reset.

*****

Updated u.ROOT constant to point to the root of the package.

*****

Ensured bm.init() always update the examples folder.
Removed obsolete bm.loadfile2().

*****

Added bm.init() call after python setup.py install/develop calls.

*****

Added exception to bm.load() to return an empty list when there
is no bibmanager database.

*****

Added examples/ folder with sample bibtex and latex files for demo.

*****

Changed bibfile of sample.tex to avoid conflict with sample.bib.
Updated sphinx docs to add quick example documentation, and note
when other examples use the sample.bib file.

*****

Added dependencies for setup.py.
Fixed bug with setup.py for install call.
Cleaned up setup.py.

*****

Hid sphinx requirements in docs (needed only for development).

*****

Bumped bibmanager version to 0.5.3.
This next merge closes #21

*****

Corrected intentation in bib_manager.py to four spaces.

*****

Rewrote string formatting as f-strings.

*****

Rewrote string formatting as f-strings in __init__.py and __main__.py

*****

Minor cleanup in __init__.py.

*****

Rewrote string formatting as f-strings in utils.py

*****

Rewrote string formatting as f-strings in latex_manager.py

*****

Rewrote string formatting as f-strings in config_manager.py

*****

Added try-except clause in cli_config() to avoid throwing traceback
at user.

*****

Bumped bibmanager version to 0.5.4.
This next merge closes #5
(Did my best to throw specific errors in API, and catch them to
avoid throwing tracebacks at user).


*****  Thu Jan 10 13:47:49 CET 2019  *****

Fixed bug in bm.init(), set the right order: create HOME folder,
reset config, reset database.
Removed obsolete None-check for loadfile().
Fixed bug with pygments style (get it on execution rather than during
import).

*****

Added ignored context manager for bm.init() calls in develop/install.

*****

Fixed error message in am.add_bibtex() for invalid ADS token.

*****

Bumped bibmanager version to 0.5.5.


*****  Fr 11. Jan 16:11:43 CET 2019  *****

Changed ROOT (again) to point to location of bibmanager/__init__.py
(Will need to update in utils.py once I set the package structure).
PS: This commit breaks untill I fix setup.py

*****

Updated setup.py to add package_data, automate packages, and comment
out cmdclass (until I get it working).
Moved examples folder into bibmanager folder (so it can be included
during install).

*****

Restored cmdclass in setup.py.  Install works as expected.

*****

Fixed bug in u.repr_author(), missed the f before the f-string.

*****

Added MANIFEST.in file.

*****

Bumped bibmanager version to 0.5.6.


*****  Sat Jan 12 12:15:33 CET 2019  *****

Refactored files and package structure to a standard package format.
Fixed a few typos here and there.
Updated docstring examples accordingly.

*****

Moved ads_token and ads_display loading into functions
to update them at runtime.
Removed unnecessary constants (url paths) from ads_manager.py

*****

Bumped bibmanager version to 0.6.0.
This next merge closes #12


*****  Sun Jan 13 14:06:24 CET 2019  *****

Caught case of empty input string in utils.cond_next() returning zero
(thought it's not expected to occur).

*****

Fixed bug in utils.parse_name() for input strings ending (starting)
with a comma.
Fixed missing f in f-string of len-fields exception.

*****

Tweaked utils.cond_split() to count matches at the beginning and end
of string, returning an empty substring for the edges (this is more
inline with the BibTeX name formatting).

*****

Modified utils.cond_split() to remove blanks around first/von/last/jr
and collapse blanks in between.

*****

Added test_utils.py testing file.

*****

Added requirements.txt and .travis.yml files to set up continuous
integration.

*****

Updated .travis.yml file.

*****

Updated README.md to include logo and build badge.
(Update with doi when ready).

*****

Modified lm.no_comments() to match comment line when the first line
in string begins with a comment.

*****

Tweaked lm.citations() to remove outer commas and remove blanks
more cleanly.


*****  Mon Jan 14 22:45:16 CET 2019  *****

Added test_latex_manager.py testing file.
(Still need tests for functions that need fixtures).

*****

Changed import format for utils, getting module rather than the
module's variables.  This fixes an issue with a monkeypatch testing
(constants were get from utils before runtime, .i.e., before monkey
patching).


*****  Tue Jan 15 23:32:15 CET 2019  *****

Added check at Bib.__init__() to count zero net braces.


*****  Thu Jan 17 00:20:11 CET 2019  *****

Tweaked bm.display_bibs(), cleaner trimming of ending newline.

*****

Added remove_duplicates() to bm.__all__.
Fixed bug, in bm.remove_duplicates() when there are no entries
without the field to check.

*****

Added conftest.py file with fixtures for pytest.
Added mock_input() fixture.
Implemented tests for bm.remove_duplicate() function.


*****  Fri Jan 18 00:22:30 CET 2019  *****

Implemented mock_init() fixture (which uses mock_home), to really
make sure that each test starts from sratch in isolation.

Implemented tests for bm.save(), bm.load(), and bm.export().


*****  Fri Jan 18 17:37:50 CET 2019  *****

Implemented test for bm.filter_field().

*****

Added exception to bm.remove_duplicate(), return immediately if
there are no entries with (non null) requested field.

*****

Resorted order fixtures in conftest.py.
Added entries fixture to define a list of entries.
Modified bibs fixture to inherit from entries fixture.
Added mock_prompt fixture to mock prompt_toolkit.prompt() function.

*****

Reshufled merge function in bib_manager.py (no real edits).

*****

Adapted test_bib_manager.py tests to use entries fixture when needed.
Implemented tests for bm.add_entries() function.

*****

Implemented tests for bm.merge() function.
Moved 'Merged ...' print statement to the very end of bm.merge().


*****  Sat Jan 19 14:25:35 CET 2019  *****

Updated docstrings and docs for search (in database).

*****

Implemented tests for bm.search() function.
This completes test_bib_manager.py (for now, need to think about
bm.edit()).

*****

Fixing travis file to run both 3.6 and 3.7

*****

New attempt at fixing travis file.

*****

Some cosmetic edits in config_manager.py.

*****

Added test_config_manager.py file testing test.

*****

Fixed bug in lm.build_bib(), need to prepend path to bibfile when
taken form bibiliography, and ran remotely.

*****

Allowed lm.build_bib() to receive texfile without extension
(but still check that it has a .tex extension).
Added extension checks to lm.compile_latex() and lm.compile_pdflatex().

*****

Implemented tests for lm.build_bib() and clear_latex() functions.
Only the compiling functions remain to be tested.  But those require
either heavy monkeypatching or lear how to integrate the compilation
commands into travis CI.


*****  Sun Jan 20 18:36:49 CET 2019  *****

Modified mock_init fixture to monkey patch functions' defaults.

******

Added mock_init_sample fixture to initialize database with entries
from sample.bib file.

*****

Moved main_description string in __main__.py to outer scope so the
user can access to it.

*****

Updated test_bib_manager.py to use mock_init_sample fixture.

*****

Implemented test_cli.py with tests for command-line functions.

*****

Removed unit subfolder in tests.


*****  Di 22. Jan 18:07:43 CET 2019  *****


Added ads_entries() fixture to test ads_manager.py functions.

*****

Implemented test_ads.py with tests for the ADS features.
Since there are many that depend on requests, there are many skipped
tests.  That should be resolved either monkeypatching or learning
how to test requests properly (ideally).

*****

Added skip pytest marks in latex and pdflatex functions
(while I figure out whether these commands are testable or not).

*****

Upped required prompt_toolkit requirement to version 2.0.7
since it was failing (locally) during Linux py3.6 testings.

*****

Updated docs.

*****

Bumped bibmanager version to 1.0.0.
This next merge closes #6
And completes the tasks for first release (exclamation mark)


*****  Do 7. Feb 17:56:15 CET 2019  *****

Added tests that involve the requets package using requests_mock.
Added requests_mock to tests_requires in setup.py.

*****

Updated purify() to include case when special characters are followed
by braces.

*****

Updated docs.


*****  Sat Apr  6 18:24:53 CEST 2019  *****

Tweaked entries screen output spacing for better clarity.

*****

Updated screen output of ADS URLs.

*****

Added long_description to setup.py.

*****

Bumped bibmanager version to 1.0.1.

*****

Added PyPi shield to README.md, index.rst, and setup.py.
Added travis and license shields to index.rst and setup.py.

*****

Added DOI shield to index.rst and setup.py
Added license shield to README.md
Updated DOI shield in README.md

*****

Bumped bibmanager version to 1.0.2.


*****  Sun Apr  7 14:12:54 CEST 2019  *****

Refactored cli_search() to read user inputs from prompt_toolkit.promt
rather than CLAs.  This mimics a search in ADS.  This changes the
behavior for the user.

Updated mock_prompt() fixture to handle input arguments as keywords
(makes it more flexible).
Updated docs and tests accordingly.

*****

Catch no user-input case for bibm search.
Added test.

*****

Added tests for different command-line search scenarios.
Minor tweaks to the docs.


*****  Thu Apr 11 22:23:35 CEST 2019  *****

Added tests for am.manager() function.
Added more entries for reqs decorator.

*****

Refactored cli_ads_search() to use promp_toolkit.prompt(), enabling
autocompleter. Added '-n' argument to request next chunk of entries.
Added tests for cli_ads_search().

*****

Fixed script to launch tests in travis file.

*****

Added install -e line in travis file.

*****

Fixed typo in setup.py, requests-mock module name in test_requires.

*****

Added explicit requests-mock install command in travis file.


*****  Sun Apr 14 10:36:44 CEST 2019  *****

Added auto-suggest for the auto-complete word list in cli_search()
and cli_ads_search().  Replaced prompt_toolkit.prompt() with a
prompt_toolkit.PromptSession.prompt() call.
Moved search_completer and ads_completer WordCompleters form
__main__.py into utils.
Added AutoSuggestCompleter() class into utils to handle the
suggestions.
Added mock_prompt_session() fixture into conftests.py to monkeypatch
a PromptSession object.
Updated tests accordingly.

*****

Added history to cli_search() and cli_ads_search() prompts.
Added path to history files in utils.

*****

Update docs.
Minor tweaks here and there.

*****

Bumped bibmanager version to 1.1.0.
Next merge resolves #32
Although this does not resolve the original idea of enabling
autocomplete for the main bibm command-line calls, it adds very
convenient auto-complete help in searches. So I will close #28

*****

Updated Zenodo links.

*****

Bumped bibmanager version to 1.1.1.


*****  Sat May 25 21:43:36 CEST 2019  *****

Refactored bm.merge() to accept base argument.  When provided
merge new entries into base, rather than into the BM database.
Also, bm.merge() now returns the merged list of entries.
Tested.


*****  Mo 27. Mai 09:06:02 CEST 2019  *****

Modified Bib.eprint to keep only the ID (remove 'arxiv' and
'astro-ph' preamble) to prevent duplicate non-detections.

*****

Implemented Bib.update_key() method to updated the key and content
of a Bib instance.
Tested.

*****

Fixed bug in setup.py (changed tests_requires to tests_require).

*****

Refactored am.add_bibtex(), adding base argument which merges
new/updated entries into base (if not None).
Also, am.add_bibtex() now returns the the updated list of entries.
API was completely refactored to catch matching DOIs and eprint IDs.

*****

Tweaked am.add_bibtex() to accept eprints and dois lists.
If provided, the code will attempt to match ADS results against
the provided fields.
Some other minor tweaks in the screen output.
Updated tests.

*****

Refactored am.update() to accept base argument. When provided,
ads-update entries in base rather than the BM database entries.
Added passing DOI and eprint lists into am.add_bibtex().
Also, am.update() now returns the updated list of entries.

*****

Swapped order of author and first-author auto-suggestion.
Show first-author option first.

*****

Implemented cleanup command-line argument to clean a bibfile
independently of the bibmanager database.
Fixed minor bug in ads-search CLI docs.

*****

Added cleanup docs.

*****

Added bash-bibm FAQ into docs.

*****

Updated link of zenodo badge to always-latest version.

*****

Updated README.md with RTD docs badge.

*****

Added docs badge to setup/PyPI (long description) and index.rst.
Fixed docs path in README.md.

*****

Bumped bibmanager version to 1.1.2.

*****

Updated MANIFEST.in to include tests, docs, and requirements.txt

*****

Bumped bibmanager version to 1.1.3.


***** Sun Jun 16 22:55:12 CEST 2019  *****

Updated docs, added tutorial and tweaked get-started text.


*****  Wed Jun 26 14:37:36 PDT 2019  *****

Fixed link in pypi long description.

*****

Updated docs, added api.

*****

Minor tweak in conf.py.

*****

Bumped bibmanager version to 1.1.4.

