code optimistaion

much faster percolates() method
code cleanup
added javadoc