Toward General Purpose 3D User Interfaces: Extending Windowing Systems to Three Dimensions