Surface Generation in Ultra-precision Diamond Turning: Modelling and Practices