Added broadcast variables support to the optimizer.

This is the third an final PR for issue #66 after PR #383 and PR #418. With this PR broadcast variables should be supported in trivial dataflows where the broadcast input is within the same iteration scope.

Please check [my comment](https://github.com/stratosphere/stratosphere/pull/383#issuecomment-33047450) in PR #383 for a proposed solution in order to add proper support for broadcast variables with nested iterations.