Add a "portal".
Add jquery-nearest to dependencies.
Fix square moving going through edges; add minimal support for interactive elements.