mark function interface with @FunctionalInterface
make GridCell a final class
publish javadoc
fixed javadoc