Refactoring IFileSystem

Making AssemblyNeutral and creating .Interfaces package
Changing semantics of string property to be relative
Updating tests
Changing return value to be always non-null with Exists property
@lodejard seems odd to have FileSystem have a dependency on Caching. Couldn't the adapter live as a separate type somewhere that depends on both these things?