Find and fix a deep bug of multi-thread weakform process

  - former process is actually single threaded at all the time
  - fix synchronization bug in PenaltyWeakformAssemblier and LangrangeWeakformAssemblier
  - make LinearLagrangeDirichletProcessor thread safe