[ModalCloseButton] Rework ModalCloseButton to be Ajax based
Issue #451 - Use AjaxCallListener#onBeforeSend() to set the new location.hash.

This way the application may make its own ModalCloseButton that operates completely on the client side by using AjaxCallListener#onPrecondition("return false;")
Merge pull request #451 from l0rdn1kk0n/90-ModalCloseButton-anchor-with-Ajax

[ModalCloseButton] Rework ModalCloseButton to be Ajax based