TAJO-992: Reduce number of hash shuffle output file.
Closes #115
add emitter and refactored casewhen.
TAJO-931: Output file can be punctuated depending on the file size. (hyunsik)

Closes #119
Merge branch 'master' of https://git-wip-us.apache.org/repos/asf/tajo into TAJO-906

Conflicts:
	tajo-common/src/main/java/org/apache/tajo/util/Pair.java
	tajo-core/src/main/java/org/apache/tajo/worker/TaskAttemptContext.java
Implanted code generation to almost all physical executor.