OpenTK rework

Too much shit to list