Marshaling for decimals

This patch provides support for the CQL decimal type. This patch supersedes an initial implementation (see #77) and builds on the requirements established as part of that discussion.