mark functions internal if not building a library

the entry point is wrapped with what should be the only public function