Initial checkin of user API functions
(cherry picked from commit e76ebe7018d468e70ae8d3cec12fd3e1bc690bd7)
Added updates for user api
(cherry picked from commit 19903b3124127450a1c467a9ae6a093b1f901c59)
Fixed limits to take tuple or tuple of tuples
(cherry picked from commit bcbf2fc8057b4342be6a3f1ac19b8ff23f99bfcd)
Updated per PR #23