added messages, more css, better functionality