Added container::find_opt and split optional_bind into two functions