First crack at full jacobian; definitely will need to fix it up according to timing constraints