Added server side validation and reworked the layout.