Fixes and Tries for Better Design

Signed-off-by: Kenneth Lim <kenlimmj@gmail.com>