Moved more non-user facing functions from the header into the source