Extract a protected method.

If anyone wants to subclass this, having a separate method will be nice.
Make it easy to put inputs *inside* label elements.

This is a frequently requested feature that is much easier to implement
now. Add it so it is easy to integrate bootstrap & older versions of
foundation.