Programming Finite Elements in Java(TM)