I checked out the scripting glossary and I found out that a Coroutine is basically a script running inside a script..
"A coroutine is a routine outside the main routine of the script. It executes its own code whilst the main (script's) routine executes as well, therefore having two routines by one thread - multitasking! You aren't limited to 'only' have one coroutine."
I want to know how to use Coroutines, how would I go about doing so?

2 comments
Thanks, this helped a lot. What would coroutine.resume(routine) Do?
It starts (or "resumes") the coroutine. You can use coroutine.yield(...) to stop the coroutine's execution, and then coroutine.resume(routine, ...) to start it again. When you first create the coroutine, it does not auto-start, so you must "resume" it.