split out nginx into it's own crate