- fix headers
- add init and destroy function and definitions