change API: using setters/getters to define hash properties