[Yujun] Upgraded to Java 8 and added some new classes.