Various ui fix

This update try to optimize the UI, fix old bugs, implement new features.

- [x] Clean up a big part of UI event listener.
- [x] Fix scroll and drag/drop problem.
- [x] Introduce ```UIComponent.mouseMode```, define if the mouse can traverse the UI to intersect with the 3D world (Minimap, ChatBox examples).
- [x] Move some UI draggable box to the component titlebar (avoid problems with scrollbar).
- [x] Fix bug with intersection and mouseleave on Firefox (causing the 3d world not to be clickable).
- [x] Clean Background system.
- [x] Now focus the UI on click (UI move at top of others).
- [x] Add proper discount on NPC Store UI.
- [x] Remove a lot of old fixes for old problems.
- [x] Fix Trade UI, validate the trade just when the two players already conclude.
- [x] Fix possible trick with UI resize.
- [ ] Check everything again in all browser to avoid specific problem.