implemented overlaycontroller (incomplete)