Focus of controls is the hard part. You end up needing a Per-seat version of focus in an application.
Most of the focus issues should be solvable at the library level.