Surface: Further API cleanup

Todo for later: Completely redesign the way light decorations are
implemented. The current implementation lacks coherency with half
the logic and state split between Surface and rend_decor.cpp/h