Add executeAndGetResultAsEntity and executeAndGetResultAsEntityIterator methods to mapper

## Add executeAndGetResultAsEntity and executeAndGetResultAsEntityIterator methods to mapper

Code that turns the result set returned by AbstractMapper::execute() to an entity or entity iterator is repeated in many places.  Adding these methods will allow us to eliminate this duplication.

### Acceptance Criteria
1. executeAndGetResultAsEntity should return an entity if found and false if not found.
1. executeAndGetResultAsEntityIterator should always return an EntityIterator.  If no results are found, it should return an empty iterator.
1. Use these methods within synapse-base.

### Tasks
- None

### Additional Notes
- None
I would change this to `AbstractEntity|bool` and comment above that it returns `false` if no results found.