feat(frontends/lean): max precedence used by Lean is not max_uint anymore

The motivation is to allow users to define notation with higher
precedence than function application.
refactor(library/data/num): break into pieces to reduce dependencies
refactor(library/data/num): break into pieces to reduce dependencies