fixed forward declaration, updated gitignore