initial checkin. Does not compile, not ready for use.