Scene implementation. Still need some fixes.