Cleaned up __newindex callback

An error is now returned when attempting to set an index which has no
callback
Enforced const-correctness for members