Moved header definitions to a separate .h