Seperate parser from generated object

Hi,

I have now separated the parser from the generated bibliographic data (created a class for the object). This still should be fully compatible with the 0.5.5 API. Directly in the bibtexparser module I have created some convenience functions `load`, `loads`, `dump` and `dumps` for straightforward parsing and writing, similar to the `json` module.

Both writer and parser class have various attributes for tweaking input or output.

The `BibDatabase` object has attributes `entries`, `entries_dict`, `comments`, `strings` and `preambles` to cover the complete BibTeX file.

Docs updated and tests expanded.

Hope this all makes sense.