Use a smarter method to extract track number from filename.

When file has no metadata field indicating the track number, Picard
is trying to guess it from filename, but the simple regex wasn't very efficient.

tracknum_from_filename() does a much better job.
A test case was added.