code gen for expression eval

And I also attached a document at https://spark-project.atlassian.net/browse/SHARK-73