ko.toJS changes

This pull request:

* fixes #251, now `ko.toJS` won't serialize ordinal functions. It's checking only for functions in objects since I don't think anyone is making an array of function, but if you think it's necessary I'll make it also checking for functions in arrays. There is also a spec for that
* objectLookup using `prototype`
* it also fixes #577 so that instance of Number, String and Boolean are correctly serialized, they are treated like instances of `Data`. (there was a similar pull request, #524, but with this there's also a spec)