Renamed HasLayout to HasWidget.

The word Layout was confusing, swing uses a getLayout function to
access LayoutManagers.
Refactored save file prompts.
Added close button to tabs.
Set workspace persistence and defaults.
Simplified resizing with BorderLayout.
Added confirm dialog.