Refactor Fl_Overlay and add missing function.