added bounds to dragging
another draft of the ui lib start