use Object.create in extend