Literal "byte arrays" and "true arrays of integers"
Currently, we have single syntax to specify both "byte arrays" and "true arrays". Distinction is done by compiler with some heuristics:

* `[1, 2, 3]` would be byte array (because all elements are integer literals 0..255)
* `[1, 2, 3, 500]` would be true array (because 500 > 255)
* `[0 + 1, 2, 3]` would be true array (because `0 + 1` is not a literal)

I propose to get rid of this heuristics and make an uniform & easy-to-understand way to specify both.

This is (kind of) prerequisite for https://github.com/kaitai-io/kaitai_struct/issues/253. Technically we can (and will) use hacky trick with `0 + 1`, but it's much better to have clear specs.