[SPARK-3176] Implement 'POWER', 'ABS and 'LAST' for sql

Add support for the mathematical function "POWER" and "ABS" and the analytic function "last" to return a subset of the rows satisfying a query within spark sql. Test-cases included.
Why are you converting the numbers to a String?  This is a pretty expensive operation.