py/objtype: Use mp_obj_dict_copy() for creating obj.__dict__ attribute.
py/objtype: Use mp_obj_dict_copy() for creating obj.__dict__ attribute.

The resulting dict is now marked as read-only (is_fixed=1) to enforce the
fact that changes to this dict will not be reflected in the class instance.

This commit reduces code size by about 20 bytes, and should be more
efficient because it creates a direct copy of the dict rather than
reinserting all elements.

MrSurly/micropython,pramasoul/micropython,kerneltask/micropython,henriknelson/micropython,MrSurly/micropython,adafruit/circuitpython,henriknelson/micropython,bvernoux/micropython,MrSurly/micropython,pramasoul/micropython,henriknelson/micropython,selste/micropython,pramasoul/micropython,MrSurly/micropython,kerneltask/micropython,henriknelson/micropython,bvernoux/micropython,kerneltask/micropython,bvernoux/micropython,adafruit/circuitpython,adafruit/circuitpython,selste/micropython,adafruit/circuitpython,pramasoul/micropython,selste/micropython,pramasoul/micropython,kerneltask/micropython,selste/micropython,MrSurly/micropython,bvernoux/micropython,bvernoux/micropython,kerneltask/micropython,selste/micropython,henriknelson/micropython,adafruit/circuitpython,adafruit/circuitpython