core_map: Use Core_map in Semantics
(cherry picked from commit 434b1f8c900f2b3e46fe2f03782db5e5f7b0cabb)
from_pipe: Use Semantics to determine pipes

The from_pipes function now assumes that packets are not modified on the
switch before being sent to the controller. That means that any
modification of a field preceding a "port := <pipe>" is ignored for the
purposes of compilation, and implemented at the controller.