using optparse exceptions
included descriptions
fixed code blocks