As far as having actionscript in your file, you can usually manage with just one layer dedicated to it. It sounds like you are trying to place it on the layer where the content is, which is not necessary, and can make things a little hard to manage... keeping your code in one place makes it easier to deal with.
When you assign event listeners to objects, those objects have to exist in the same frame (not layer) as that code, otherwise you will get errors like the one regarding leaf5.... you could also get that error if leaf5 does not have its instance name assigned.
As far as cutting out half the code... event lsteners work with event handler functions, so if you remove the handler the listener will not have any impact, except possibly to generate an error message.
Foiled by a missing instance name. I do'nt know why I missed that. That's exactly what it was. Thanks!