Added include guards, fixed strlen and ((v)f)printf