have safe_strcpy take a size_t as the length parameter for api consistancy and move defines into consts