Improving the explanation of 'Captured by Closures'

The new alternative suggestion actually results in the expected behaviour, rather than simply avoiding the runtime exception
Using a more "natural" val in the modified version
Reformatting answers and replacing 'does not compile' with something more likely
Now moving 'values' out of scope of the function invocation

Also reinstating 'does not compile' as an answer, since it seems more plausible now
More reformatting
Adding 'value not found' detail to 'does not compile' sample answer
Importing collection.mutable.Buffer to be able to reference it without using the FQN
'Both print' -> 'Both statements print'
Better Scala style: funcs1.foreach ... -> funcs1 foreach ...
(nonexistent) ArrayIndexOutOfBoundsException -> IndexOutOfBoundsException
Typo: 'functions closes' -> 'functions close'