Added switch widget, next made widget base class and world can have an array of em.

Added TODO