added some printouts and neumann boundary conditions
fixed neumann boundary conditions
added program arguments