rewrite most of dlna_src_parse_npt_range()

- cleaner code and easier to read
- stop leaking the string returned by g_ascii_strup()
dlna_src_parse_npt_range: stop time is optional

The MCVT tool server doesn't report any.
Merge pull request #135 from gdesmott/util-refactor

Util refactor