Cleanup Makefile
Add .travis.yml
Update gitignore
Cleanup code
Add static_assertion to ensure constuctor from void* is deleted
Cleanup traits check code