Add missing forward declaration to surface
Add initial version of EGL target buffer type
Add notification method
Add methods for inserting and removing surfaces