#3 and #4 create map and inferable mapping methods for public usage

Ok.. protected it'll be.