Improve layout of keywords dialog

This PR moves the keyword dialog widgets into discrete tabs and groups. It is not quite ready for merging yet as I need to hook up hide.show behaviour for the aggregation tab.