Tests: Bugs with discriminator inheritance on Doctrine models

- Fixes a few units tests so I could run them locally
- Adds tests for a bug with the inheritance of the discriminator property if the doctrine classes extend a non-entity base class
- Adds test for a bug where the discriminator field name does not have the naming strategy applied to it

**Inheritance Bug**

Discriminator settings are not inherited if the if the parent entity class extends a generic base class, for example:

```php
<?
/**
 * Non-entity base class
 */
abstract class AbstractModel {}

/**
 * @ORM\Entity
 * @ORM\InheritanceType("SINGLE_TABLE")
 * ...
 */
abstract class Person extends AbstractModel {}

/**
 * @ORM\Entity
 */
class Student extends Person {}
```

On the other hand, if `Person` does not extend any parent class, the inheritance works as expected:

```php
<?
/**
 * @ORM\Entity
 * @ORM\InheritanceType("SINGLE_TABLE")
 * ...
 */
abstract class Organization {}

/**
 * @ORM\Entity
 */
class School extends Organization {}
```

**Naming Bug**

When the discriminator is automatically added from Doctrine annotations, the field name will not have the naming strategy applied to it. `@ORM\DiscriminatorColumn(name="orgType")` will result in `{"orgType":"school","camel_case":"foo"}` instead of the expected `{"org_type": ...}`.

**Related Issues**

From what I could find, this is related to #166, #182, #287, #296, #309