Helper for ciphertext expansion

We already have a routine to get the mic length, but the ciphertext
expansion is not a constant -- we must loop over plaintext sizes to
find the maximum ciphertext expansion.

Change-Id: Id4a625fb180f77d99fb8427a093f517caf1d021a
PreparePacket handling

Call out to a mic_packet or enc_packet routine as appropriate.
Error handling and memory management are not all there.

Change-Id: I40736cf46730a57d4d92e6baddcbf86f92751535
Properly reserve space for the security object's bits

Set a header and trailer size on the connection as appropriate
for the security level.  The client does this when creating a new
connection, but the server doesn't have the information available
until it is checking the client's authentication response.

The MIC is a fixed-length header and we do not reserve any space
at the end since the MIC is not computed in-place and thus no padding
is needed.

Encrypted packets will decrypt to something that contains a pseudoheader,
so use that as the header size.  The trailer size is determined by the
ciphertext expansion.

Change-Id: I0c8b0d02f1d92aca824de9400c1c8f14146c4d17
CheckPacket handling

Call out to helper routines to verify the MIC or decypr the packet as
appropriate.
Error handling and memory management are not all there.

Change-Id: I6ee9e50ca9dc76c08e2df53c847f51edfa7f4fc8
Actually supply a list of levels

Don't assign three things in succession to the same variable.

clang, why are you not warning me about this???

Change-Id: Id05de8a7d149efa15b36eaec60da60c90af78916