Analysis for loop keywords.

This analysis class checks if certain keywords are used inside blocks/loops or
not. If this is not the case an error is added.

Ruby reports this kind of usage as a syntax error. Parser doesn't handle this
and rightfully so. This requires keeping track of two things:

1. Are we in a block?
2. Are we in a loop that allows next/break?

While the code for this is not too difficult I don't feel this should be handled
on parser level, thus I've added it to a new analysis class.

This fixes #126.