New non-stacking ToastDisplayer implementation

A rehash of PR #27.

This adds an interface for ToastDisplayer.

It deprecates Toaster, but enhances it by upgrading it to use the new interface (without breaking API).

It adds two implementations of ToastDisplayer:
- a regular one, like Toaster, but with the ability to cancel all preceding toasts
- a non-stacking one, which will only show the last toast

:ship: (on this issue)?

fb75c92 Added the `context.getApplicationContext()` to the static factory. The user of the lib doesn't have to care. Any implementors using the soon-to-be package protected ctor are warned in the ctor javadoc.