Added new GUI elements and improved implementation.