New logic done, todo: javadoc, access modifiers, questions