add global class and keyboard interface
add header guards and fis dependencies