change a project structure

 * separate client-side app and server-side app
 * use grunt and bower for client-side app