Add Emacs markers to automatically set c++-mode in headers.
Avoid unnecessary string copying for IIOBusClient::GetIODeviceName().
Avoid unnecessary string copying for IBankSelector::GetName().
Avoid unnecessary string copying for IFPUClient::GetName().
Avoid unnecessary string copying for IRPCServiceProvider::GetName().
Disconnect Object from clocks.

Initially (a long time ago) MGSim's kernel would run a cycle
handler on every cycle on every object. So each object had
its dedicated clock. However at some point the kernel
was updated to use discrete event scheduling, so the
simulation becomes driven by active storages. Since then
it is storages (and ports) that are related to clocks,
not simple objects any more.

This patch simplifies the code accordingly, by removing
the clock member of every object, and simplifying the
arbitration logic.

This patch results in 4-5% performance improvement
on current hardware.