Move BitIterator to its own file.
Split packet related code into its own file.