Initial commit of merging semi implicit problems into llg driver

* Mostly just moved code from semi implicit problem into llg problem
  (inside conitionals)

* Building the problem is still somewhat messy

* Add relevant command line flags

* Also modified self tests to use driver.cc
In parse.py label decoupled ms problems in legend
Add error for pinning single phi in parallel since it won't work
Make phi*_index() functions in LLGProblem simpler

* Fixes bug where phi1 wasn't pinned because the index was wrong
  in decoupled problems

* Needed to change some bem setup code to get the correct indices
In llg residual test use structured mesh instead of unstructured
Add boundary markers to unstructured square mesh

* This allows bem to automatically detect edge nodes

* Also translated mesh to match location of structured square mesh
Add boundary markers for unstructured cubeoid

* Allows bem to auto detect corner angles
Shrink unstructured cubeoid to match structured cubeoid size
Remove two_sphere/close energy test because nothing to test it against
Add option to fail if error norm exceeds a specified value