To address your second concern, when they stated to use https://api.twitch.tv/kraken/users/dallas to pull the user ID, it is with v3 not v5 (as v5 you need the user_id)
Dallas has recognized the (large) concern regarding v5 and determining the user_id after v3 is removed in 2018, so I am sure we will see something come out for that, but in the mean time there is a way to determine the user_id in v5 however it still is not an ideal method and I look forward to what they introduce.
In v5, you can determine a user_id by using a username via:
https://api.twitch.tv/kraken/search/channels?query=USERNAME&client_id=CLIENTID&api_version=5
And then poll through any results for a ‘name:’ that matches, then that token will be the one and can pull the _id - you can determine which token is correct as the others are a similar name while only one will match (or 0 if the user is suspended).
But as I mentioned earlier, that ‘workaround’ isn’t ideal and is messy so hopefully we’ll see an endpoint that returns a user_id for a given username (or something along those lines.)