Add scroll component

PR needs to be rebased before merge.