Enabling Workload Engineering in Edge, Fog, and Cloud Computing through OpenStack-based Middleware