More intelligent disassembly scrolling

When stepping with the PC on the last two visible rows, the window will scroll down a couple of lines instead of centering on the new position when it's outside the current window.
Also enforces the height of the disassembly to always be a multiple of the row height, so that there are no partially visible rows.