Editor layouts

Added support for saving and restoring custom dock panel layouts, useful
for switching between different workspace styles.