Fix decimal literal casting and cast expr reanalyze().

BigDecimal doesn't think about scale the way we need it to.

Change-Id: I09612c31e30e80ce4806080f1d24c6615090785e
Reviewed-on: http://gerrit.ent.cloudera.com:8080/2779
Reviewed-by: Marcel Kornacker <marcel@cloudera.com>
Tested-by: jenkins