Animal Companion Sprawl
One of the conventional holdovers from the D&D 3.5e era was multiple categories of companions - Familiar, Animal Companion, and Special Mount. In Pathfinder, these categories were changed to Familiar, and Animal Companion, with Eidolon added later as a Summoner companion.
Pathfinder:
Paladin Special Mount is an Animal Companion, same as the Samurai Mount, and the Cavalier Mount.
For the Paladin, we have a the Bonded Mount, "This mount functions as a druid’s animal companion, using the paladin’s level as her effective druid level. Bonded mounts have an Intelligence of at least 6."
For the Cavalier & Samurai, we have the Mount, "This mount functions as a druid’s animal companion, using the cavalier’s level as his effective druid level. The creature must be one that he is capable of riding and is suitable as a mount."
According to these FAQ rules:
FAQ: http://paizo.com/paizo/faq/v5748nruor1fn#v5748eaic9qqn
Cavalier: Do animal companion levels from the druid class stack with cavalier mount levels?
If the animal is on the cavalier mount list and on the list of animal companions for your other class, your cavalier and druid levels stack to determine the animal's abilities. If the animal is not on the cavalier mount list, the druid levels do not stack and you must have different animals (one an animal companion, one a cavalier mount). For example, if you are Medium druid and you choose a horse companion, levels in cavalier stack to determine the horse's abilities. If you are a Medium druid and you choose a bird companion, levels in cavalier do not stack to determine the bird's abilities, and you must choose a second creature to be your mount (or abandon the bird and select an animal companion you can use as a mount). This same answer applies to multiclassed cavalier/rangers. (Note that the design team discourages players from having more than one companion creature at a time, as those creatures tend to be much weaker than a single creature affected by these stacking rules, and add to the bookkeeping for playing that character.)
In order to properly support these rulings, we'll need to take the MOST permissive lists, and place them in a selection.
Solution 1:
Separate out every single Animal Companion, have it add to one or more "lists" - 'Nature Bond Animal Companion', 'Divine Bond Mount', 'Mount'
Pros: Very precise, easy to add/remove Cons: Ability or templates become very numerous.
Solution 2:
Have grouped Abilities that added entire groups of valid companions (Similar to what we are doing to handle Druid Archetypes).
Ultimate Solution:
Formula System v3 - Using the Arrays and allow the Lists to be populated from the Arrays.