Change some functions to use Choice instead of raising exceptions; modified call sites for those functions to pass the result through Choice.get to approximate the original behavior.
Commented out the 'can' function (in lib.fs) and "inlined" all uses of it; this makes it easier to remove uses of 'can' one-by-one, and also to keep track of where it's used (because it can result in some hard-to-find bugs).