Added entityx::make_ptr to mirror std::make_shared

entityx::make_ptr simplifies pointer construction, for example:
```cpp
entityx::ptr<entityx::EntityManager> entities(new entityx::EntityManager(events));
```
becomes
```cpp
auto entities = entityx::make_ptr<entityx::EntityManager>(events);
```