I have header guards on the headers for the helper functions, but still, each one includes <library.h> as it needs to use it. Not sure how to change the structure
If library has the proper guard too, you are fine. Else you need to hope that it does not contain anything which lead to errors wit multiple inclusions. Other than that you do not need to worry.