All that does it make it difficult to interoperate with other packages, and Make it difficult to build my project, because I need to worry about 15 types of overlap.
It's 5AM and I haven't slept yet but here's the 3 second version of how licenses work-
GPL- You post your code. If I release changes, I need to post my code too.
aGPL- Same as GPL, but applies to web services.
LGPL- You post your code. If I change YOUR CODE, I need to release THOSE changes, but not my whole app.
MPL- Like the LGPL, but incompatible. Adds a line saying that people who use your code need to license the Patents, not just the code. The FSF says this is implied in the LGPL, but MPL makes it explicit.
BSD/MIT - Feel free to use the code. You don't have to contribute back.
Apache- Like BSD, but contributors must agree to license any patents.
WTFPL- Do whatever the fuck you want.
Just pick the one you like. It sounds like you want LGPL or MPL. LGPL is the more often used of the two.
Even Firefox (The M in MPL stands for Mozilla...) now offers it's code under the LGPL in addition to the MPL, so there's little incentive to put new code under MPL-only.