Add exercise: Logarithms 1.5

Summary:
Inspired by the comment:

> The exercises should include negative and fractional logarithms as well, e.g. log(8,2) = 1/3 and log(4,1/64) = -3.

Test Plan: ... looked at hints for all the different cases? Not sure what one writes in a test plan for new exercises.

Reviewers: eater

Reviewed By: eater

Differential Revision: http://phabricator.khanacademy.org/D979
Make-better the dividing complex numbers exercise

Summary: Now the answer is always an integer and the hints make more sense when dividing by a single term.

Test Plan: ...looked at the hints?

Reviewers: eater

Reviewed By: eater

Differential Revision: http://phabricator.khanacademy.org/D980
Equations should have equals signs

Test plan: tested locally

Auditors: stephanie
Move images around to match the directory structure in ka-stable.

Summary:
This should make it easier to keep images up-to-date between the two
repos.

Test Plan:
Once I have 'arc mail'-ed this off, I'll check that the images display
correctly for this revision in the two reading-pictograph exercises,
on sandcastle.

Reviewers: eater

Reviewed By: eater

Differential Revision: http://phabricator.khanacademy.org/D985
Fix a url to use urlBase, so it shows up in sandcastle.

Summary:
There are still some urls I can't fix up, since they're in static
html rather than javascript, but this is better, at least.

Test Plan:
Once I 'arc mail' this, I'll go to one_step_equation_intuition on
master and make sure it displays the images correctly.

Reviewers: eater

Reviewed By: eater

Differential Revision: http://phabricator.khanacademy.org/D984
Separate out imageBase from urlBase.

Summary:
urlBase is meant to point to the root of khan-exercises.  For images,
this isn't entirely appropriate, because khan-exercises just has a
copy of the 'canonical' version of the images (which live in the main
KA repo).  So imagesBase should be the same as urlBase only when the
canonical version of the images isn't available, and we have to use
the khan-exercises copy.  In cases where the canonical version *is*
available, we should default to using that.

I distinguish the cases where the canonical version is available or
not based on testMode.  More principled (but also slower) would be to do an actual ajax request
for an image, and see if '/images/face-smiley.png' is a 404, or we
have to use '/khan-exercises/images/face-smiley.png', and set
imageBase that way.  But this should work well enough.

Test Plan:
One I 'arc mail' this, I'll go to I'll go to
one_step_equation_intuition and reading-pictographs-1 on
sandcastle.khanacademy.org (for this phabricator revision) and make
sure they display the images correctly.  We'll also have to double
check that they also work correctly once we deploy this to the live
site.

Reviewers: eater

Differential Revision: http://phabricator.khanacademy.org/D986
Pass along the definition of imageBase, as needed.
Fix this: http://www.youtube.com/watch?v=RSCmw8GWdzU

Instead of the exercise being gamable as described in the video 75% of the time, make it 50%

Test plan: tested locally

Auditors: stephanie
Separate out imageBase from urlBase.

Summary:
urlBase is meant to point to the root of khan-exercises.  For images,
this isn't entirely appropriate, because khan-exercises just has a
copy of the 'canonical' version of the images (which live in the main
KA repo).  So imagesBase should be the same as urlBase only when the
canonical version of the images isn't available, and we have to use
the khan-exercises copy.  In cases where the canonical version *is*
available, we should default to using that.

I distinguish the cases where the canonical version is available or
not based on testMode.  More principled (but also slower) would be to do an actual ajax request
for an image, and see if '/images/face-smiley.png' is a 404, or we
have to use '/khan-exercises/images/face-smiley.png', and set
imageBase that way.  But this should work well enough.

Pass along the definition of imageBase, as needed.

Change imageBase to include the /images directory.

Test Plan:
One I 'arc mail' this, I'll go to I'll go to
one_step_equation_intuition and reading-pictographs-1 on
sandcastle.khanacademy.org (for this phabricator revision) and make
sure they display the images correctly.  We'll also have to double
check that they also work correctly once we deploy this to the live
site.

Reviewers: eater

Reviewed By: eater

Differential Revision: http://phabricator.khanacademy.org/D986
Merge branch 'master' of github.com:Khan/khan-exercises
Fix #35879 rounding issue in converting_decimals_to_fractions_2

Test plan: tested locally w/ the seed from the issue report

Auditors: stephanie
Update qtip version, along with khan-site.css
Merge pull request #36219 from Khan/update-qtip

Update qtip version, along with khan-site.css
Fix into-mixed problem type

Close #36287.

Auditors: eater
Change pack.rb to be a filter, and add a make command for old functionality.

Summary:
Now pack.rb takes an html file from stdin (or it can be listed on the
commandline, using the magic of ARGF) and emits the 'packed' html
to stdout.  This makes it easier to use in a variety of contexts.

A new 'make pack' (or 'make packed') rule mimics the old behavior:
packing everything in exercises/ and putting it in exercises-packed/
but skipping files that are newer in exercises-packed/ (and thus
unchanged since the last pack run).

Style nit: read() doesn't take parens.

Emit all errors to stderr.

Test Plan:
Ran
  mv exercises-packed /tmp
  make pack
  diff -r exercises-packed /tmp/exercises-packed
to verify that the output is unchanged.  Then ran
  make pack
again and verified it's a noop.  Then ran
  rm exercises-packed/z*
  make pack
and verified it only re-made the z_scores* packages.  Then ran
  touch -t199001010000 exercises-packed/z*
  make pack
and verified it re-made the z_scores* packages (and nothing else).

Reviewers: eater, alpert

Reviewed By: alpert

Differential Revision: http://phabricator.khanacademy.org/D995
Use a proper data-ensure to ensure nonsimilarity

Fixes #36508.
Decimals aren't acceptable as a rational answer...

Closes #36270.

Auditors: emily
Make a fallback of "0" actually work

jQuery .data() casts to a number if it looks like an number, and 0 is falsey.

Closes #36244.

Auditors: emily
Update css/khan-exercise.css

One missing semicolon.
Make update-khan-site.sh work with new combine.py script

Also update the sed regex to prevent it from emitting two consecutive slashes.