First Commit... Proof of concept. Works great, need to expose the rest of the properties/methods.