Implemented multi sub-key support

Old getter are marked as deprecated. They will be removed when all other
methods have been changed to the newly returned Lists.

As discussed with @f-porter

Closes #206
How else should it be done? Creating a new list every time private or public keys are accessed? The whole lists would have to be iterated and the sub keys copied to a new list. Directly holding a reference to these cost about nothing.