Final Commits

All APIs implemented, test classes added, javadocs added, final touches.