Added strcpy
Made device initialization hierarchy-based