Dave Tucker 7eebdcbdeb aya-bpf-macros: Cleanup and remove required_args
This commit cleans up the recently refactored aya-bpf-macros
to be a little easier to maintain:

Cosmetic changes:

1. The flow of the parse function is the same in each file
2. Useless if !attrs.is_empty() guards were removed
3. The compile error when cgroup_sock programs have an invalid
   attach_type was in the wrong location

Functional changes:

1. Remove pop_required_arg. All args are optional and making them
   required was a mistake on my part. We may revisit this later.
2. Rename pop_arg to pop_string_arg
3. Implement pop_bool_arg to allow for single idents to be mixed with
   our key/value pair syntax in macro attributes. This is used for
   `sleepable` and `frags` in XDP programs.

Signed-off-by: Dave Tucker <dave@dtucker.co.uk>
..
args.rs aya-bpf-macros: Cleanup and remove required_args
btf_tracepoint.rs aya-bpf-macros: Cleanup and remove required_args
cgroup_device.rs aya-bpf-macros: Refactor for ease of testing
cgroup_skb.rs aya-bpf-macros: Cleanup and remove required_args
cgroup_sock.rs aya-bpf-macros: Cleanup and remove required_args
cgroup_sock_addr.rs aya-bpf-macros: Cleanup and remove required_args
cgroup_sockopt.rs aya-bpf-macros: Cleanup and remove required_args
cgroup_sysctl.rs aya-bpf-macros: Refactor for ease of testing
fentry.rs aya-bpf-macros: Cleanup and remove required_args
fexit.rs aya-bpf-macros: Cleanup and remove required_args
kprobe.rs aya-bpf-macros: Cleanup and remove required_args
lib.rs aya-bpf-macros: Cleanup and remove required_args
lsm.rs aya-bpf-macros: Cleanup and remove required_args
map.rs aya-bpf-macros: Cleanup and remove required_args
perf_event.rs aya-bpf-macros: Refactor for ease of testing
raw_tracepoint.rs aya-bpf-macros: Cleanup and remove required_args
sk_lookup.rs aya-bpf-macros: Refactor for ease of testing
sk_msg.rs aya-bpf-macros: Refactor for ease of testing
sk_skb.rs aya-bpf-macros: Refactor for ease of testing
sock_ops.rs aya-bpf-macros: Refactor for ease of testing
socket_filter.rs aya-bpf-macros: Refactor for ease of testing
tc.rs aya-bpf-macros: Refactor for ease of testing
tracepoint.rs aya-bpf-macros: Cleanup and remove required_args
uprobe.rs aya-bpf-macros: Cleanup and remove required_args
xdp.rs aya-bpf-macros: Cleanup and remove required_args