bitovi/canjs — pull request #928 by andykant (2014-04-30 18:46:31+00:00)
Title: Mustache fixes for static properties on can.Construct-based constructors

I added the following fixes for #450:
- can.Construct functions are never executed in lookups
- Anonymous functions that are not the final lookup are always executed
- Helpers arguments/hash objects are now consistent
- Functions that are the "final" object are always passed as the original object and never executed
- The argument/positional parameter way things were handled were the proper way

```
var foostructor = can.Map({ text: "bar" }, {}),
obj = {
next_level: {
thing: foostructor,
text: "In the inner context"
}
};
foostructor.self = foostructor;

{{next_level.thing.self.text}} -> "bar"
```