Enable binding of const variables

Before this change, it was not possible to bind a <const int> as a variable on a class or module, it is now possible.
Work in progress: Pass references by pointer instead of value
Simplify addVariable handling for const variables
Fixes for my change to pass reference arguments without copying
Fix CFunction calling convention for CppArgPasser
Simplify addVariable for const variables
Push class type variables onto stack by pointer instead of value
Always pass variables by refence instead of specializing on is_class type
Push class variables by reference in getter to avoid unnecessary and potentially non-existant copy constructor
Only support settable variables if the type is copy assignable

This fixes what would otherwise be a compilation error for non-copy assignable types since they cannot be set.
Improve comments for addVariable.
Merge pull request #13 from krisr/master

Various enhancements