place to put gui for player?

what i mean by this is should it be attached to the camera or a seperate object that takes care of it , as well as stuff like random generators for creating enemys and/ GUI pause menus?

It depends on the purpose of the script. For example, a menu function would most likely be attached to the camera while a button to jump would be on the character.