* Add wire.InterfaceValue, required instead of wire.Value if the value is an interface value.
* Update guestbook sample to use InterfaceValue where appropriate.
* Remove unnecessary ok := true
* Addressing comments from code review.
One small breaking change: a provider set can no longer include an
interface binding to a concrete type that is not being provided
(directly or indirectly) by the provider set. I can't imagine a
reasonable use case for the previous behavior, so this likely will
catch more errors
In terms of operation, binding conflict error messages will now give
much more specific line numbers, since they will be reported closer to
where the problem occurred.
Now that provider sets gather this information, it can be exposed in
the package API. gowire now uses this information instead of
trying to build it itself.
Fixesgoogle/go-cloud#29