Simple menu fixes

More on the way to getting #528 resolved.

Older Rubies that Shoes3 ran on had scoping differences that meant that DSL
classes could be referred to unqualified (i.e. `Link` instead of `Shoes::Link`).

To retain compatibility with that older code (and also keep the Shoes API
simpler), we promote any DSL class that gets `Shoes::CommonMethods` included in
it to the top-level.

Don't know if this is the best way to do this, but I didn't want to have to scatter the
aliases across all those class files, or pile on yet another list at the bottom of `lib/shoes.rb`.

Also pulls up `Link` and the new (placeholder) `LinkHover` to that top level so
`simple-menu.rb` is closer to being fixed. `LinkHover` doesn't really do anything at this
point, but will get the the sample runnable without crashing once this and #634 are merged.
Not sure that it'll be totally addressed then, but these seem like important steps towards
getting that sample running.