Is "window snapping" the resistance encountered when the border of a dragged
window is aligned with that of another window (or with the border of the
screen)? Or is it the ability to maximize a window by dragging it to the top
of the screen, or to make it occupy half of the screen by dragging it to the
left/right border of the screen?
Either way, you can get those features with GNOME Shell. If you are willing
to try it, just install the "gnome-shell" package (e.g., from the "Synaptic
package manager" in the "System settings"), logout, choose the GNOME session
(an icon at the right of your user name in the default login manager) and
login again. You can install "gdm" as well for additional features (such as
screen lock and, if you want, notifications while the screen is locked).
It is worth reading http://wiki.gnome.org/GnomeShell/CheatSheet to discover
useful keybindings.
GNOME Shell is highly extensible: http://extensions.gnome.org
You can even get a "classic" interface by installing the related extensions.
I believe all those extensions are conveniently packaged in a package named
"gnome-shell-extensions" (that you can install from the "Synaptic package
manager"). I am not sure because I link the (now not so) new interface.