Fixed Init command throwing when a ripple.config was not found

FindSolutionDirectory now relays optional shouldThrow argument
Update filesystem tests to work outside the ripple project root

On some systems having visual studio open would cause random rake failures.
Added exception to wrap CSProj xml read related exceptions

This will hopefull add more context to exceptions like this:

```
ERROR: System.Xml.XmlException: Data at the root level is invalid. Line 1, position 1.
   at System.Xml.XmlTextReaderImpl.Throw(String res, String arg)
   at System.Xml.XmlTextReaderImpl.ParseRootLevelWhitespace()
   at System.Xml.XmlTextReaderImpl.ParseDocumentContent()
   at System.Xml.XmlReader.MoveToContent()
   at System.Xml.Linq.XElement.Load(XmlReader reader, LoadOptions options)
   at System.Xml.Linq.XElement.Load(String uri, LoadOptions options)
   at ripple.MSBuild.CsProjFile..ctor(String filename, Solution solution) in c:\projects\ripple\src\
ripple\MSBuild\CsProjFile.cs:line 43
   at ripple.Model.Project.<>c__DisplayClass2.<.ctor>b__0() in c:\projects\ripple\src\ripple\Model\P
roject.cs:line 22
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.LazyInitValue()
   at ripple.Model.Project.get_CsProj() in c:\projects\ripple\src\ripple\Model\Project.cs:line 28
   at ripple.Model.SolutionBuilder.<>c__DisplayClass3.<Build>b__1(Project project) in c:\projects\ri
pple\src\ripple\Model\ISolutionBuilder.cs:line 43
   at System.Collections.Generic.GenericEnumerableExtensions.Each[T](IEnumerable`1 values, Action`1
eachAction) in c:\BuildAgent\work\4dafc5966c0aefb4\src\FubuCore\EnumerableExtensions.cs:line 78
   at ripple.Model.Solution.EachProject(Action`1 action) in c:\projects\ripple\src\ripple\Model\Solu
tion.cs:line 358
   at ripple.Model.SolutionBuilder.Build() in c:\projects\ripple\src\ripple\Model\ISolutionBuilder.c
s:line 36
```