Add version method to ToplevelSurface
Add version method to ToplevelSurface

Currently the `shell_surface` is not accessible to the outside, meaning
there is no way to query for the XDG shell protocol version supported by
the client.

Adding a `version` method fixes that problem, which allows compositors
to act differently based on the supported protocol version. As an
example this allows setting the state to `State::Maximized` if the
tiling states are not available.

Smithay/smithay,Smithay/smithay,Smithay/smithay,Smithay/smithay