Remove usage of optional arguments to public methods #779

Modifies the IRepository.cs and Repository.cs files to remove the optional parameters from the various method signatures.  This will help address potential versioning issues. 
Not optional from a C# standpoint, but `null` is still a valid value for `options`.