this is starting to look like an actual IDE now...