Fix workspace/window creation
Only expose necessary public API