add ambient lighting
add light engine
re-arange idle func, begin keyboard detection