make setProperty() call the camel-cased setter

- setting a property now has a single code path again
- made a private method _setProperty that the properties can
  call to do everything they need to get things added correctly
- fixed border's implicit properties (again)
- this should fix tmpvar/jsdom#900