the notion of branching and redistributing wo/ an author's express consent seems a bit nefarious
Why? That's exactly what free software is about. If there's an application/library you like but which hasn't been updated for a while and you have the skills to fix it and thereby make it work for you because you have the code and the license allows it, great. If you can then redistribute the software along with your changes and thereby give the community the chance to profit from your work, so much the better.
This is not to say that I'm advocating wholesale forking of projects, it is usually much better to work with the original author and merge your changes back into his/her code. For one thing, you won't suddenly have to field the requests by users for yet more changes :-). But if the original author doesn't like what you're doing or is incommunicado for ages or you just simply don't get along, putting your version up somewhere for others to use is definitely the better option than letting your code smolder lonesome in your SCM.
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it. -- Brian W. Kernighan