Change binding API's to use Propertys for better type safety