Adding C# API changes to support custom scans.

I tried to keep the same style.  I believe this is everything we discussed.  Please let me know if I can help further.  Thank you for helping with the C++ bindings.  I did not remove the other "Add*" scans from IMaster to preserve backward compatibility, but I don't need them if you want to remove them entirely.