updated the implementation of Locker
updated the inheritation of classes
add smart pointer implementation for egame