Completed support for bind<void>. Added test case.

While working on this I noticed that `bind<void>` did not work for member functions. Curiously, bind_mf2_cc introduces support for `bind(type<Rt2>, R (T::*f)(...), ...)` and there are tests for `bind(type<void>(), ...)`, but not for the equivalent `bind<void>(...)`. I introduced these additional overloads to bind_mf_cc (since they are not `type<>` based). I fear this might trigger some new overload resolution errors on old compilers.

I composed a test out of pieces of other tests. I included a compilation test for data members, but I don't see a way to test any runtime behavior.

I would like to add some notes to the documentation explicitly stating support for `bind<void>`, any suggestions?