first draft of client lib introduced, test_page uses it now