Fix object is unsubscriptable error

Mis-handled uniqueid when type was non-library item, removed it, and added check in api function to add uniqueid to data passed if it exists in video info.
Check year of non-library item, if its digits, add it to the information.

Needs testing of course.

If anyone who uses the streaming plugins listed in the tested and scrobbling correctly (Amazon, CBS, southpark, PleXBMC) could get in contact with me on xbmc's IRC (freenode), I could debug this a lot quicker and solve once and for all hopefully.