Move the code to optionally wait to its own method - clean up the create, destroyt, stop and start methods