Cleaned up OI.java and added comments