support drag from within the board and big refactoring to have better isolation