If we implement each mode in his own class (BranchDelete, BranchCreate,...) then we don't need the Mode enum anymore. I hope we can also get rid of this options map. Why not store the options simply in plain attributes?