Extract method works properly with code indented more than one level

Extract method was messing up the extracted method if the code being extracted was indented more than 4 spaces. 

Also the method call to the extracted method was not indented correctly.

This PR fixes both these issues.

Unit tests & acceptance tests are included.

PS: For some reason 2 scenarios are failing the the Fix Class Names feature but there were failing before I started working so I'm assuming that they either are currently broken in the repo or something in my environment?