If you want to be able to save and load several presets for one patch, arrays are the way to go. There are more than a dozen generic preset managing patches around this forum if you look in the patch and abstraction sections. But you will probably learn more from creating one yourself.
For a simple preset management use ; messages. Use the receive options on your buttons to your advantage. For example let's say you have four toggles receiving on b1, b2, b3, b4 respectively. Then you make a message box like this: [;
b1 1;
b2 0;
b3 0;
b4 1; (
The semicolons are important!. Now you that message will set all those toggles whenever you bang it, without connecting chords for the toggles.
If you're having a lot of toggles you might wanna look into ad-da conversion / binary to decimal and back. This way you can (theoretically) keep track of 32 zeros and ones with one float. There are a couple of conversion patches in the abastractions forum.
As for working with arrays for preset management, take a look at the help files, and the array examples in the /doc/ folder to get an idea what you can do with tabread and tabwrite.