Mark's work on bundles as methods

This is the part of @markburgess's development branch that deals with method bundles, as reindented and (without knowledge of the code involved) rebased onto master by @ediosyncratic.