expanded types model

expanded to allow for object and
action types seperately. introducted an optional
mapper list for each type which can be used to pick
which types of objects/actions an object/action
works with