For question one, reading the following from the codex makes me think you need to change hierarchical
to 1:
depth (integer) (optional) The max depth. This is ignore unless
hierarchical is set to true. Default: 0/Falsehierarchical (boolean) (optional) Display all categories (0/False) or
display categories (1/True) to a depth of ‘depth’. Default: 0/False