all source files are prefixed with 'twn_'

things are categorized into two main folders:
- 'include' for any definition that are usable from townengine library
- 'src' for any private implementations

internal headers have '_c.h' ending, so to not collide with our include style

example of a module:
src/twn_module.c -- internal implementations
src/twn_module_c.h -- private declarations
include/twn_module.h -- public declarations

both private and public headers are included via root:
#include "twn_module.h"
#include "twn_module_c.h"

additional subfolders in src/ are possible when implementation permutations are in place, build system will chose the appropriate ones

all procedures in include/ headers must have TWN_API macro applied