THRIFT-562. java: Java is inconsistent checking for required fields This patch makes the compiler act consistently regarding what it means to be required or optional. Additionally, it cleans up the tests to actually use the Fixtures class all over.