ENH: Use a context in reconfigure
@jinchang please take a look. I changed reconfigure such that it uses a context and added a unittest for reconfigure (which should have been done a long time ago...). The test checks that the code runs as well as confirming that the link between initial and final structures remains intact after reconfiguration.