Boost 1.56 with boost-python

This PR will upgrade Boost to 1.56 (changes from #31428) and split Boost.Python into a new boost-python formula.

Continuation of #30957; accidentally deleted my remote git branch, oops.