Update Crawler and tests

Seperate the logic to prepare HTML from Crawler::updateContent to
Crawler::prepareContent. Then update all unit test to run this
before parse.

Better simulate the environment for crawling.

UDN unit test encoding problem is hence solved. Updated test result.
Fixed CNA news source
Fixed PTS news source
Update NewsSourcesCfg.php

Updated with phpdoc comments
Added SingTao as a news source

Add the crawler and the unit test.
Add 1 more Sing Tao unit test target
Fix Passion Times line break preparation
Fixed SingTao parsing problem with most sources

Use mb_string to fix the seemingly encoding issue.
Follow upstream changes for conversion

Upstream dumped `iconv()` and use `mb_convert_encoding()`.
Fix HK sources tests with Crawler::prepareContent

Fix HK source unit tests with the Crawler::prepareContent() change
done earlier to TW sources.
Fixed SingTao debug changes
Changed WenWeiPo tests
Add 1 more test case for SingTao
Fix Passion Times for case 3008

1. Identify <br someattr="" /> case.
2. Better handle the <span>abcd</span><br/> case.
Merge pull request #16 from yookoala/new_src

New src
Merge pull request #1 from kenyiu/master

Update to latest master