update to avoid global variables

David, this patch uses a new interface for system assembly that allows you to avoid the global variables.  Feel free to move the Kronecker delta and elasticity tensor functions into the class, if you'd like.  Or ignore the changes altogether :-)