If the package_id meant the creation package, then I can see that a single relationship would exist for each object. Possibly a 'system package' could be created and be the default? This would be used in the case where the creator wasn't known or if the object was created via some pl procedure outside of a package. For instance the package 'system package' would be created by itself. But if the package_id starts to mean different things to different developers, it isn't going to be very helpful in the long run.
In any case you also have to deal with the circular reference acs_object --> package --> acs_object.