First Push. Basic API should be simple complete and concise. Events should eventually be added