You may want to look at launchd then. Launchd is the 1 daemon that rules them all.
You basically create a laund item (.plist) and you can have it execute your scripts as log in hooks or log out hooks or as you determine it. Then put your launchd item in the respective location.
/Library/LaunchAgents - will act as a log in hook for all users
/Library/LaunchDaemons - system wide start up item - when it boots it will run regardless of if anyone has logged in or not
~/Library/LaunchAgents - runs when this specific user logs in.
Note that all launchd items run as root, so if you need it to run as a user you will have to script it to run as that user.
Now, once you have created it, you can use
launchctl to load it, and if you use the -w option it is permanent and will load every time. You can even set times and dates it triggers.
for more references see this:
Mac OS X Manual Page For launchd(8)