XD-1550 Propagate BeanFactory to Hand-Built Beans

JIRA: https://jira.spring.io/browse/XD-1550

SI Components need access to a BF to get the message builder
factory.

Use mocks where needed for test cases.

Ran with SI 4.0.0.BUILD-SNAPSHOT with environment variable:

	SI_FATAL_WHEN_NO_BEANFACTORY=true

which forces a hard failure instead of just a log message.