fix #177 (parse_date_time fails with factors)
use supplied tz when conflicting with ISO8601 format

Fix # 178 (Behavior of` `ymd_hms()` given conflicting information from
`...` and `tz`)

Add adjusted test cases as provided by Ian Lyttle.

Because check for tz is happening deep down the recursive parsing, there
is no straightforward way to ignore user supplied timezone at top level
in parse_date_time without either using global variable or losing
efficiency when supplied vector contains NAs. So, taking the easy and
more natural path.
Merge branch 'issue_178' of https://github.com/vitoshka/lubridate into issue_178
proposed solution to mixed-format case