Initial implementation

Provides implementation of list, show, add/update and delete functions.
The indent looks like is 8. don't know the convention in SDK team, but teams I have worked with use 4