Wayland is the protocol. Just like X has the X11 protocol, for clients to talk with the server. So yes, you could say it is between toolkits (Gtk, Qt, EFL, ...) and a server.
Libwayland (often just "wayland") is a C library, which implements the Wayland (core and few extensions) protocol bindings, and offers a C application programming interface for easy use. You could say that libwayland turns C function calls into bytes that are transferred through a local Unix socket, and it does also the opposite.
Weston is the reference Wayland server (and a compositor and a window manager in the same package). It is the reference compositor, because it is what the Wayland depelopers mainly work on. There are also other Wayland compositors, I think Qt has a handful, for instance.