Tweaked IViewport3D interface

Tweaked the interface to be more general - DirectX-specific
implementation will be in a separate class/interface.