use proper javascript oo features