MEDIUM: pattern: The expected type is stored in the pattern head, and conversion is executed once.

This patch extract the expect_type variable from the "struct pattern" to
"struct pattern_head". This variable is set during the declaration of
ACL and MAP. With this change, the function "pat_parse_len()" become
useless and can be replaced by "pat_parse_int()".

Implicit ACLs by default rely on the fetch's output type, so let's simply do
the same for all other ones. It has been verified that they all match.
diff --git a/src/map.c b/src/map.c
index 064c52e..fced0ed 100644
--- a/src/map.c
+++ b/src/map.c
@@ -258,6 +258,7 @@
 	desc->pat.delete = pat_delete_fcts[conv->private];
 	desc->pat.prune = pat_prune_fcts[conv->private];
 	desc->pat.find_smp = pat_find_smp_fcts[conv->private];
+	desc->pat.expect_type = pat_match_types[conv->private];
 
 	/* Set the output parse method. */
 	switch (desc->conv->out_type) {