added gui rewrite which uses automatic layout handlers