used Thorax.LayoutView to take care of enforcing one modal instance and handling modal close event