Modified drive demo slightly, added a drive() function