fix some issues, including swapped display flag that was the main trouble
fill in most remaining methods