Manufacturing Software: Powering the Factory Floor