libweston: update to the libeis seat-based API
With support for seats in libeis, we're now responsible for creating seats to send to the client. The client can then create devices within that seat. This means our implementation becomes more complex, we must keep track of the various objects now to make sure we associate them correctly and clean up after ourselves.
And because this required a whole lot of restructuring and our namespaces started conflicting, rename anything in weston "weis" to avoid confusion with the libeis API.
cc @ofourdan