Move STR enum aliases onto the same lines

This is to prevent accidental double-backing of
the internal enum counter by someone adding
new ids between an alias and what it refers to.
Rewrite buttons with i18n support
Start bitmap ids from 1

This is to reserve 0 id to indicate unused/invalid bitmap.
Add i18n text for audio input devices
Improve i18n for audio devices list
Move special video devices closer to tox_av.c

Presence of always-present null input device "None"
should be announced by video_thread().

Presence of special video devices like "Desktop" is
os-dependent and should be announced by video_detect().

This commit implements that, so dropdown_video content
is never manipulated directly from main()/tox_thread()
initialization code paths.
Encode special handles for audio-in devices directly

Integer handles for special audio-in devices like
"None" and "Default Loopback" are encoded into pointers
by platform-specific code directly (which will expect
them later as pointers anyway), instead of doing it in
 NEW_AUDIO_IN_DEVICE and wasting param2 for it.
It also makes it uniform with how it's done for
special video devices.
Merge branch 'i18n-for-buttons' of https://github.com/albel727/uTox

#
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.
Merge branch 'better-i18n-for-devices' of https://github.com/albel727/uTox

#
# Please enter a commit message to explain why this merge is necessary,
# especially if it merges an updated upstream into a topic branch.
#
# Lines starting with '#' will be ignored, and an empty message aborts
# the commit.