[SPARK-2531] [SQL] Make BroadcastNestedLoopJoin take into account a BuildSide

JIRA ticket: https://issues.apache.org/jira/browse/SPARK-2531
Move `Vector.fill(left.output.size)(null)` out of map action, avoid the object creation in every iteration, the same with `Vector.fill(right.output.size)(null)`