Make viewport management return AutoWeakPtr<Viewport>
Typedef ViewportPtr
Start massive reorganization to factor out Scene. Exposed problems with material loading and threading that need to be fixed