Recursive Contains Method
For proper recursive 'style', you shouldn't use a for-loop inside the function. Each pass through the function should perform one test and then set up the next pass. This also frees you from needing to track the index as an argument.

Consider that:

contains("hello", "lo") == 
contains("ello", "lo") == 
contains("llo", "lo") == 
contains("lo", "lo")