ASN1: rewrite _decode_der

This rewrite makes phpseclib better able to handle indef lengths, which had previously been untested.

@bantu - I have a 14KB file that we can make a unit test out of. ie. consider this script:

```php
<?php
include('File/ASN1.php');

$asn1 = new File_ASN1();
$a = $asn1->decodeBER(file_get_contents('FE.pdf.p7m'));

echo count($a[0]['content'][1]['content'][0]['content'])
```
Without this change the output of the above is 3. With it it is 5 (which is correct).

Where should this 14kb file live in the unit test directory structure?
Please always use absolute paths using `dirname(__FILE__)`.