Fix inconsistencies between python-vagrant and the vagrant CLI.

Alas, these are big breaking changes.  A goal of the design of methods
like `status()`, `box_list()`, and `plugin_list()` is to be a thin
wrapper around the corresponding vagrant CLI commands.  These changes
bring python-vagrant closer to that goal, I hope.

When status() was originally written, it was with single-VM environments
in mind, before provider information was available.  Since then it was
altered to return a dict to handle multi-VM environments.  However it
still did not return the provider information vagrant outputs.  This
command updates the status API so that it returns every tuple of VM name
(i.e. target), state (i.e. status), and provider output by the
underlying vagrant command.  These tuples of values are returned as a
list of Status classes.  The decision to return a list of Statuses
instead of a dict mapping VM name to Status was made because the vagrant
CLI does not make clear that the status information it returns can be
keyed on VM name.  In the case of `vagrant box list`, box names can be
repeated if there are multiple version of boxes.  Therefore, returning a
list of Statuses seemed more consistent with (my understanding of)
vagrant's API.

The box_list() method was originally written, as I recall, before
providers and versions were a part of Vagrant.  Then box_list_long() was
written to accommodate provider information, without changing the
box_list() API.  Unfortunately, this meant box_list() diverged more from
the output of `vagrant box list`.  To bring the python-vagrant API back
in line with the vagrant API, while keeping it simple, the
box_list_long() method is being removed and the box_list() method is
being updated to return a list of Box instances.  Each box instance
contains the information that the `vagrant box list` command returns for
a box, the box name, provider, and version.  The user who wants a list
of box names can do:

    [box.name for box in v.box_list()]

For consistency with status() and box_list(), the relatively new
plugin_list() command is updated to return a list of Plugin objects
instead of a list of dicts containing the plugin info from vagrant.

The choice to use classes for Status, Box, and Plugin information was
motivated by the lower syntactic weight compared to using a dicts.
Bump version.  Log changes.  Update README.
Update year.