plugins best practices

I've updated the plugins best practices reflecting advancements that was made over the years since the epic [Plugin namespacing: A good solution?](https://groups.google.com/d/msg/simple-build-tool/cCCYbopR6JQ/CslOL4TCb7IJ) thread that started this page.

It's more opinionated (avoid commands, provide feature in `object`) and strongly worded about things that previously waffled (I removed the bit about task scoping being optional because that disclaimer predates `::` notation in the shell). /review @jsuereth 
The point above is that:  You should use the *minimal* thing when you can.  Prefer settings over tasks, tasks over input tasks, input tasks over commands, etc.