It might be just me, but I think it isn't necessary to have the function prototypes inline with the module. This kind of detail belongs in the railgun side.