Move commands into `emysql_conn`, split `emysql.hrl`.

Emysqls headers now have an internal and an external part. While here, we are striving
to move commands to "local" files where possible, so we avoid having to include them in
each and every file we compile or work with.
Refactor length-coded-"binaries" and l-c-strings.

There is a much nicer Erlang idiom by pattern matching on the top-level for these
constructions. No need to use an `if` to handle this.