WebUI: Insert weekday names to grids and dialogs and instate error checking for program details in DVR info dialog

A couple of parts to this...

__1. Restore weekday to lists of recordings__

It used to be there, but dropped out sometime recently. I don't know about anyone else, but a slab of upcoming/finished recordings listed solely by date doesn't make as much sense to me as something that includes the day, 'cos that's how my head works.

So, we go from this:

![screen1](https://cloud.githubusercontent.com/assets/6093716/5518060/adce2878-890a-11e4-80f8-250678848673.png)

... to this:

![screen2](https://cloud.githubusercontent.com/assets/6093716/5518061/b3ee8f86-890a-11e4-98d0-33f68eb11d25.png)

__Thoughts and comments:__

1. It goes against 'universal date formatting' a little, but that's unavoidable: weekdays aren't included in any default dd-mm-yyyy hh:mm:ss -style representation.

2. This *SHOULD* work in your locale, so you'd get Mon/Tue/Wed or Lun/Mard/Mecr or Mon/Dien/Wod or whatever your browser language is. 

3. Arguably, we could (probably...!) do the same with a renderer on the grid in dvr.js, but changing idnode.js does it for all instances in one go, which seems neater.

4. The column is getting a bit wide. I can personally live with that, as the day/date/hour is more important to me than the minutes/seconds - plus, you can always resize to your preference. Comment if someone violently disagrees, please.  

5. Following that thought, there is the argument to reformat the lot to something else (e.g. Mon, 22 Dec 14, 20:30), but now we're back into whether your locale uses yyyy-mm-dd, dd-mm-yyyy or mm-dd-yyyy so I think this is unnecessary.

__2. Add weekday to EPG and DVR information dialogs__

Similar to the above, we go from this:

![screen3](https://cloud.githubusercontent.com/assets/6093716/5518128/7dcfe338-890e-11e4-9ad7-6742f98ba39f.png)

... to this:

![screen4](https://cloud.githubusercontent.com/assets/6093716/5518213/20fcde22-8913-11e4-97ef-57fda664b4ac.png)

__3. Add some error checking to the fields in the DVR information dialogs__

You can see this in the above screenshots. If a field doesn't exist, don't include it, so it gets rid of the __undefined__ error if the *episode* or *subtitle* isn't in the EPG data, for example. It also gets rid of the zero file size for upcoming recordings (it's kind of obvious that it's zero at the moment, after all...).