Handle property class methods

This adds to the API the interface for casting, and setting a default value to properties.

    class User
        property :name, :last_name, class_name: String, default: 'Something'
    end