Add timeout and improve options and messages
Tidy up options