Switch to `&:extend(.clearfix all)` for clearfix mixin

Original discussion:
https://github.com/less/less.js/issues/1437#issuecomment-21383639.

Since we’re switching to `grunt-contrib-less`, we can take advantage of
newer LESS features than what RECESS supported. Included in that is the
ability to `:extend`, and not only that, but `:extend(.mixin-name
all)`. By doing so, we remove duplicate CSS for all our elements that
were being clearfix-ed.

Fixes #8947, #8968, #8991, #9257, #9268, #9291, #9430, #9604, #9686,
#9929, #10731, #10793, #11305, #11498, #11533, #11570, #11604, #11652.

(dem issues, tho)
more nesting in .list-group-item-variant mixin
Merge branch 'pr/11778' into drop_recess_for_less

Conflicts:
	Gruntfile.js
	dist/css/bootstrap-theme.min.css
	dist/css/bootstrap.min.css
Merge pull request #11792 from twbs/list-group-nest

more nesting in .list-group-item-variant mixin
Merge branch 'pr/11779' into drop_recess_for_less

Conflicts:
	Gruntfile.js
	package.json
grunt
Undo merge of #11778 and use cleancss min option
Merge pull request #11790 from twbs/drop_recess_for_less

Drop grunt-recess for grunt-contrib-less
enable CSS source maps in grunt-contrib-less
improve compliance with LESS's strictMath
Merge pull request #11807 from twbs/stricter-math

improve compliance with LESS's strictMath
add parens around arithmetic in recursive mixin calls to comply with LESS strictMath

<3 @seven-phases-max for helping to confirm & debug this
X-Ref: https://github.com/less/less.js/issues/1725
misc strictMath compliance fixes
Merge pull request #11808 from twbs/strict-math-fixes

more LESS strictMath fixes
enable strictMath in grunt-contrib-less config
Merge pull request #11809 from twbs/enable-LESS-strictMath

enable strictMath in grunt-contrib-less config
Remove unused variables.
Buildprocess: use module "load-grunt-tasks" to load grunt tasks directly from the package.json
correct indentation
hide space characters in input-group-btn to fix segmented buttons double border