Async loading, adjust end command timeout

Makes loading of the application Asynchronous and allows changing of the
command timeout through the settings panel.