Refactoring

- Refactor parameters
- Decrease header file dependencies