When the first LOGOP operand called into an ignored file the condition coverage could be lost. Fix that and add the test case which uses Moo.
Moose accessors on the LHS of logops were missing coverage. This was due to the artificial Moose generated filename not matching the filenames for which coverage should be collected. When this occurred on the LHS of a logop the flag showing whether we were collecting coverage was still false and so covlerage of the logop was missed. The solution is to look inside the artificially generated filename for the real filename. Note that this solution is specific to Moose. Add a test for this too.