Added a basic should-work collision check function.

It resides in src/server/ConcreteServerStep.cpp in the anonymous
namespace. It isn't being used.
Added tests for the ConcreteServer::step support functions.

To do this, I needed to move the support functions out of the anonymous
namespace. They are not declared in any public headers though, so they
are only directly accessible in the test files since they are declared
there.