puppet master coding

I am new in Puppet. I want to manage access controls for puppet agents using Puppet master.
If I get it right I should work with manifests, but I am going to set permissions on different files for different users.
My questions are:
How to manage such a big configuration on puppet master?
Can I create .pp as much as possible with any names?
If yes How to add all of them on Agents?

In a client/server architecture all manifests go onto the puppetmaster. They're stored only there (or come from a repository). The agent then ask the puppetmaster: „Hey, I'm computer X. How shall I configure myself?“ And gets the proper response. The agent will never see the actually used manifests. He just receives instructions.