Main logic

Now it's working.
Inside `Calculator.property.XXXX`, you can use `this`. But, if there is a callback, then you need to use `var self = this;` outside of the callback, and then `self.xxxx` inside the callback.