roughing in surface state reporting, bootstrapping to 'use' a surface from a client