scrapers/eztv: Use regex instead of BeautifulSoup to get episodes list

BeautifulSoup is **too** slow in a raspberry pi and we are using very basic
things from it. So, as it was simple, this commit just replaces the uses of
BeautifulSoup to get season episodes using regex.

Also, the patch tries to be as simple as possible (to make more easy to catch
the mistakes). The "big" difference in the diff is that a whole BeautifulSoup
node was saved and then access using ".text" or ".href", and now we only save
the text (by using a regex group). So, in the diff lot of ".text" and ".href"
are removed.

Before this commit on my raspberry pi it took 45 seconds to get the episodes for
White Collar Season 5, and with this path it takes 10 seconds.
scrapers/eztv: Don't use BeautifulSoup to get show seasons either
scrapers/eztv: Don't use BeautifulSoup to get shows by letter
scrapers/eztv: Wait for show metadata only on idle

The metadata is needed for the loop. So there is no point in blocking for
"result()" when we still can go ahead and parse for the links.
Merge pull request #153 from rata/rpi

Improvements to eztv scraper on raspberrypi
Merge pull request #145 from rata/master

Makefile: always use tags, so it's clear on top of which release is based
Revert "Add new buffer indicator from torrent2http"

This reverts commit 03c8fcd674944dcf2972ffe55dc28a5e3d54aac3. The binaries for
torrent2http do not have this setting yet, so it fails to run. Revert it till
new binaries are available.
Add setting to control % complete before to start playing
Wait until 20MB (by default) are downloaded before playing

This heuristic seems to work better. Currently some videos eztv series (suits
S3E11 for example) fail to play if we don't download enough of the file before
we play it. And is not that it stalls till it downloads more, that wouldn't be
too bad. What happens is that xbmc doesn't think it is a video at all, so it
fails and stops. And when it stops, torrent2http stops too and basically you
can't see the episode.

The problem is just that we didn't download enough of the file, as can be easily
reproduced using torrent2http manually.

Using the percentage of completed pieces is not too accurate to estimate if is
enough to play it. And, when increasing the percentage of pieces downloading to
make it work on most videos, the number ended up being too big for movies (i.e.
to download a lot) making the user wait for too long before the movie started.

Using a fixed ammount of MB seems to work better in practice.

Fixes #135
Wait till stream is playable before playing

mplayer is run trying to connect to the stream. Once mplayer can connect to the
stream, we are good to go. We try with mplayer after downloading some MBs
because we want to download them anyways to make the playback smooth.

To simplify the code, the xbmc.sleep() is moved to the beggining of the loop and
whenever a condition is not reched, we just do "continue" and that makes the
sleep on the next iteration.

Also, this fixes some problems on some EZTV series that need more video to
download to play succesfully.
Lower min_download_size to 10MB

Now that we use mplayer to detect when a stream is ready to be played, there is
no need to increase this too much. 10MB as buffer, if the stream is ready to be
played, is enough.
Add option to automatically ask for subtitles
Use lxml, a fast XML parser, whenever possible

This commit replaces ElementTree from python standard library with lxml, if
available. lxml is API compatible, so no changes besides the import are needed.

Python standard library also has cElementTree, a C optimized version of the
module, but is not compatible with xbmc. There are bugs reported about this and
I totally failed when trying to use it on this xbmc addon.

Replacing it by lxml only in tvdb is quite nice because it reduces the time to
show the seasons for Saturday Night Live on EZTV from ~60 seconds to ~7 seconds
on my raspberry pi. This is particulary notable on shows with lots of seasons
because the XML file tends to be bigger and takes more time to parse.

For completeness only, this is also changed on all the other files that parse
XML files.
Disable cache on YIFY and EZTV

The cache from time to time it breaks and only removing it makes the browsing
experience work again. Now that we have a fast XML parser, the cache doesn't
seem that needed and, as it breaks too often, is better not to have it.
Only show eztv and yify with nice (spanish) names
Simplify yify browsing and put names in spanish

This is a quick hack, a proper patch tu support internazionalization will be
submited in the future.
Revert "Only show eztv and yify with nice (spanish) names"

This reverts commit 4fc1919760dabad20edce199ecb3c478610764ca.