Implement a new syntax for multivariable Order symbol (v2)

This is an alternative for #2605

Supported input:
 * `O(expr)`
 * `O(expr, (var1, pt1), (var2, pt2), ...)`
 * `O(expr, var1, var2, ...) == O(expr, (var1, 0), (var2, 0), ...)`

PS: not sure if latex & pretty printing is ok.  May be we should change that just like the str printer.