constructor and gets/sets